This directory contains templates for two types of HSQL databases.
These templates can be used as starting points for creating an HSQL database dictionary
with a rare-word index using the input parameters
-db   Output Database Url
-tbl  Output Database Table

cacheDbTemplate/  contains the template .script and .properties files for a database that will be stored
on disk with row caching for only the most frequent hits.
All data is stored in one format and translated on-demand, which slows down the lookup.

memDbTemplate/    contains the template .script and .properties files for a database that will be stored
completely in JVM memory upon startup.  Data is stored in pojos and no translation is performed on lookup.
In-memory databases are significantly faster than those referenced disk-cached, but should not be used if
the dictionary is significantly large. This may mean >> 1 million rows, but depends upon your available memory.

Both databases are named ctakesumls and are set up to contain one rare-word table named cui_terms, plus several property tables
named tui, prefterm, rxnorm, etc.  The property tables each have two columns, the first being named cui and the second having the same name as the table.  
The .properties file contains a line with readonly=false.  Leave this property as false (read/write) until you have
finished populating the table, then set it to readonly=true, which (supposedly) increases lookup speed.

The sqltool.rc files may be used to inspect the databases manually (sql) using the hsqldb_[version].jar with the command:
java -cp hsqldb_[version].jar org.hsqldb.util.SqlTool --rcfile sqltool.rc cTakesUmls
The id "cTakesUmls" is case-sensitive and you may need to edit the .rc file to point to the database directory.





