version 1.11, 2001/02/15 15:04:04
|
version 1.14, 2001/02/20 14:03:27
|
Line 8
|
Line 8
|
Scott Harrison |
Scott Harrison |
</P> |
</P> |
<P> |
<P> |
Last updated: 02/14/2001 |
Last updated: 02/15/2001 |
</P> |
</P> |
<P> |
<P> |
This file describes issues associated with LON-CAPA |
This file describes issues associated with LON-CAPA |
Line 32 and a SQL database.
|
Line 32 and a SQL database.
|
</P> |
</P> |
<H2>Important notes</H2> |
<H2>Important notes</H2> |
<P> |
<P> |
|
The current database is implemented assuming a non-adjustable |
|
architecture involving these data fields (specific to each version |
|
of a resource). |
|
<UL> |
|
<LI>title</LI> |
|
<LI>author</LI> |
|
<LI>subject</LI> |
|
<LI>notes</LI> |
|
<LI>abstract</LI> |
|
<LI>mime</LI> |
|
<LI>language</LI> |
|
<LI>creationdate</LI> |
|
<LI>lastrevisiondate</LI> |
|
<LI>owner</LI> |
|
<LI>copyright</LI> |
|
</UL> |
|
</P> |
|
<P> |
|
Security occurs as a function of the user 'www', |
|
and the permissions on the files in the /usr/local/mysql |
|
directory. (These files and directories should |
|
be 700, 600, 500, 400, etc; not allow access to anyone |
|
but user 'www'.) |
|
</P> |
|
<P> |
|
These commands create the loncapameta database. |
|
<PRE> |
|
mysql> CREATE DATABASE IF NOT EXISTS loncapa; |
|
mysql> USE loncapa; |
|
mysql> CREATE TABLE IF NOT EXISTS metadata (title TEXT, author TEXT, subject TEXT, notes TEXT, abstract TEXT, mime TEXT, language TEXT, creationdate TEXT, lastrevisiondate TEXT, owner TEXT, copyright TEXT, FULLTEXT (title, author, subject, notes, abstract, mime, language, creationdate, lastrevisiondate, owner, copyright)) TYPE=MYISAM; |
|
mysql> INSERT INTO metadata VALUES ('1','2','3','4','5','6','7','8','9','10','11'); |
|
mysql> SELECT * FROM metadata WHERE title REGEXP "1"; |
|
</PRE> |
|
</P> |
|
<P> |
|
Current time values for things. |
|
<PRE> |
|
fenchurch.lite.msu.edu |
|
Mem: 46812K av, 45632K used, 1180K free, 14756K shrd, 4292K buff |
|
Swap: 1148608K av, 11260K used, 1137348K free 13244K cached |
|
|
|
Red Hat Linux release 6.2 (Zoot) |
|
Kernel 2.2.16-3 on an i586 |
|
</PRE> |
|
<BR>Q: How big are data records in test database? A: on average, 1000 bytes each, medline records from PubMed. |
|
<BR>Q: How big is the biggest field? A: on average, 838 bytes each |
|
<BR>Q: How much time to insert 5284 medline records into database? |
|
A: 600 seconds |
|
<BR>Q: What about when using "speed-technique" on page 130? A: 689 seconds (weird, eh?) |
|
<BR>Q: What about REGEXP searching? A: about 1-2 seconds for small fields; |
|
10 to 20 seconds for REGEXP search on "abstract" field |
|
<BR>Q: What about FULLTEXT indexing? A: about 6 seconds for abstract field. |
|
|
|
</P> |
|
<P> |
|
An important quote from the manual: |
|
<BLOCKQUOTE> |
|
In MySQL Version 3.23.23 or later, you can also create special FULLTEXT indexes. They are used for full-text search. Only the MyISAM table type supports FULLTEXT indexes. They can be created only from |
|
VARCHAR and TEXT columns. Indexing always happens over the entire column and partial indexing is not supported. See section 25.2 MySQL Full-text Search for details. |
|
</BLOCKQUOTE> |
|
</P> |
|
<P> |
|
I plan on using a MyISAM table type with 11 metadata fields of column |
|
type=TEXT. |
|
</P> |
|
<P> |
It might be worthwhile to look at /usr/local/mysql/manual.html. |
It might be worthwhile to look at /usr/local/mysql/manual.html. |
It is quite in depth. |
It is quite in depth. |
</P> |
</P> |