Gandhi,

My name is Kathy Ferro.

Matthew and I are trying to accomplish the thing.  I got the scripts loaded
into both SQL server and MySQL.  I did it in two ways.
1. Manually modifier the scripts for DB specific and run them in query
analyzer window as you described.  Works find if the data is small enough.
For bigger file, it looks up.
2. I wrote c# program to read the scripts and insert records one by one I
re-load them.

My question for you are:

1. Does it matter what the name of the database?
2. What configuration file do I change to switch to use the new database?
3. Do you think I can use SQL server instead of MySQL?  My SQL seems to run
faster.

Thank
Kathy




On Tue, Oct 10, 2017 at 2:34 AM, Gandhi Rajan Natarajan <
gandhi.natara...@arisglobal.com> wrote:

> Hi Matthew,
>
> The SQLs looks fine. The only additional table I'm using apart from the
> tables mentioned below is MDR table (MEDDRA related) and I don’t use AIR
> table.
>
> Do you really think you need a JAVA program to convert those insert
> statements to work with MySQL? I just opened the script file in text editor
> like Editplus and did a find for `[\)]\n` and replaced it with `);\n` using
> find and replace all option with REGEX and we are done with the scripts.
>
> But only thing is you can load the data in parallel by splitting the
> script files as mentioned earlier which saves times for you and may be you
> can write a JAVA program to split the file. This is the easiest approach I
> feel.
>
> Regards,
> Gandhi
>
>
> -----Original Message-----
> From: Matthew Vita [mailto:matthewvit...@gmail.com]
> Sent: Tuesday, October 10, 2017 10:47 AM
> To: dev@ctakes.apache.org
> Subject: Re: HSQLDB out of memory with custom dictionary
>
> Gandhi,
>
> I really appreciate this information. I have started working out the
> schema and plan on writing a program that will automatically prepare a
> script to work with MySQL. Work in progress. Can you do a quick review of
> my MySQL schema so far?
>
> CREATE SCHEMA CTAKES_DATA;
>
> use CTAKES_DATA;
>
> CREATE TABLE CUI_TERMS (
>   CUI BIGINT NOT NULL,
>   RINDEX INT(128) NOT NULL,
>   TCOUNT INT(128) NOT NULL,
>   TEXT VARCHAR(255) NOT NULL,
>   RWORD VARCHAR(48) NOT NULL
> );
> CREATE INDEX IDX_CUI_TERMS ON CUI_TERMS (RWORD);
>
> CREATE TABLE TUI (
>   CUI BIGINT NOT NULL,
>   TUI INT(128) NOT NULL
> );
> CREATE INDEX IDX_TUI ON TUI (CUI);
>
> CREATE TABLE PREFTERM (
>   CUI BIGINT NOT NULL,
>   PREFTERM VARCHAR(511) NOT NULL
> );
> CREATE INDEX IDX_PREFTERM ON PREFTERM (CUI);
>
> CREATE TABLE RXNORM (
>   CUI BIGINT NOT NULL,
>   RXNORM BIGINT NOT NULL
> );
> CREATE INDEX IDX_RXNORM ON RXNORM (CUI);
>
> CREATE TABLE SNOMEDCT_US (
>   CUI BIGINT NOT NULL,
>   SNOMEDCT_US BIGINT NOT NULL
> );
> CREATE INDEX IDX_SNOMEDCT_US ON SNOMEDCT_US (CUI);
>
> Quick question: do you use the AIR table?
>
> Thanks,
>
> Matthew Vita
> www.matthewvita.com
>
> On Mon, Oct 9, 2017 at 1:14 AM, Gandhi Rajan Natarajan <
> gandhi.natara...@arisglobal.com> wrote:
>
> > Hi Mathew,
> >
> > First I would like to tell you that even I m a newbie in cTAKES.
> > Unfortunately I don’t find any documentation on this. I have followed
> > a crude way to accomplish as this is an one time activity. This is what
> I did:
> >
> > 1) Used dictionary generator GUI to generate Snomed, RxNorm and MEDDRA
> > dictionary data that resulted in '.script' file under my
> > <ctakes_home>\resources\org\apache\ctakes\dictionary\lookup\fast\<proj
> > ect_name>
> > folder
> > 2) The '.script' file has HSQLDB specific queries. I have removed the
> > unwanted statements for me pertaining to HSQLDB from the file and
> > converted them to mysql specific queries manually.
> > 3) I have added semicolons at the end of each line in the script using
> > text editor and splitted the file in to five parts. Then I ran those
> > five sctipr files  in five different mysql command lines. It took me
> > approximately 4 hours to pump all the data in to MySQL DB.
> >
> > I'm not sure whether it is the right way to proceed as I mentioned
> > earlier. But with no documentation available for MySQL DB with
> > cTAKES, this is the approached that worked for me. Hope it will be
> helpful.
> >
> > Regards,
> > Gandhi
> >
> >
> > -----Original Message-----
> > From: Matthew Vita [mailto:matthewvit...@gmail.com]
> > Sent: Monday, October 09, 2017 10:41 AM
> > To: dev@ctakes.apache.org
> > Subject: Re: HSQLDB out of memory with custom dictionary
> >
> > Gandhi,
> >
> > Thank you for the reply. Do you have any documentation on how to
> > accomplish this?
> >
> > Thanks,
> >
> > Matthew Vita
> > www.matthewvita.com
> >
> > On Sun, Oct 8, 2017 at 3:14 AM, Gandhi Rajan Natarajan <
> > gandhi.natara...@arisglobal.com> wrote:
> >
> > > Hi Mathew,
> > >
> > > I feel using MySQL Db would be better idea than using in-memory
> > > HSQLDB. In fact, this also comes handy when you are planning to
> > > deploy ctakes as a web application as in our case.
> > >
> > > Regards,
> > > Gandhi
> > >
> > > -----Original Message-----
> > > From: Matthew Vita [mailto:matthewvit...@gmail.com]
> > > Sent: Sunday, October 08, 2017 6:02 AM
> > > To: dev@ctakes.apache.org
> > > Subject: HSQLDB out of memory with custom dictionary
> > >
> > > Hi Sean, Tim, cTAKES Community,
> > >
> > > I have put together what I am considering a pretty standard
> > > dictionary with sources from the following:
> > >
> > >
> > >    -
> > >
> > >    MEDLINEPLUS
> > >    -
> > >
> > >    MSH
> > >    -
> > >
> > >    NCI
> > >    -
> > >
> > >    NDFRT
> > >    -
> > >
> > >    CHV
> > >    -
> > >
> > >    CSP
> > >    -
> > >
> > >    ICPC2P
> > >    -
> > >
> > >    MEDCIN
> > >    -
> > >
> > >    SNOMED
> > >    -
> > >
> > >    RXNORM
> > >    -
> > >
> > >    ICD10
> > >
> > >
> > > However, when copied over to cTAKES (handled by the handy Dictionary
> > > Creator GUI) HSQLDB runs out of memory.
> > >
> > > This is my first experience with HSQLDB so you’ll have to excuse my
> > > limited knowledge here. I do understand that it can run either
> > > in-memory and on disk, but I’m not sure how to configure this.
> > >
> > > Here is how I am connecting to it:
> > >
> > >
> > >   <dictionary>
> > >
> > >
> > >     <name>sno_rx_16abTerms</name>
> > >
> > >     <implementationName
> > > >org.apache.ctakes.dictionary.lookup2.dictionary.UmlsJdbcRareWordDic
> > > >ti
> > > >on
> > > >ary</
> > > implementationName>
> > >
> > >     <properties>
> > >
> > >       <property key="jdbcDriver" value="org.hsqldb.jdbcDriver" />
> > >
> > >       <property key="jdbcUrl" value=
> > > "jdbc:hsqldb:file:resources/org/apache/ctakes/dictionary/
> > > lookup/fast/sno_rx_16ab/sno_rx_16ab"
> > > />
> > >
> > >       <property key="jdbcUser" value="sa" />
> > >
> > >       <property key="jdbcPass" value="" />
> > >
> > >       <property key="rareWordTable" value="cui_terms" />
> > >
> > >       <property key="umlsUrl" value="
> > > https://uts-ws.nlm.nih.gov/restful/isValidUMLSUser"; />
> > >
> > >       <property key="umlsVendor" value="NLM-6515182895" />
> > >
> > >       <property key="umlsUser" value="CHANGE_ME" />
> > >
> > >       <property key="umlsPass" value="CHANGE_ME" />
> > >
> > >     </properties>
> > >
> > >   </dictionary>
> > >
> > >   <dictionary>
> > >
> > >
> > >
> > > Can I configure HSQLDB to be used on disk? If this is not a good
> > > approach, can I spin up MySQL in its place?
> > >
> > >
> > > Sorry if this has asked before.
> > >
> > >
> > > Thanks,
> > >
> > > Matthew Vita
> > > www.matthewvita.com
> > > This email and any files transmitted with it are confidential and
> > > intended solely for the use of the individual or entity to whom they
> > > are
> > addressed.
> > > If you are not the named addressee you should not disseminate,
> > > distribute or copy this e-mail. Please notify the sender or system
> > > manager by email immediately if you have received this e-mail by
> > > mistake and delete this e-mail from your system. If you are not the
> > > intended recipient you are notified that disclosing, copying,
> > > distributing or taking any action in reliance on the contents of
> > > this information is strictly prohibited and against the law.
> > >
> > This email and any files transmitted with it are confidential and
> > intended solely for the use of the individual or entity to whom they are
> addressed.
> > If you are not the named addressee you should not disseminate,
> > distribute or copy this e-mail. Please notify the sender or system
> > manager by email immediately if you have received this e-mail by
> > mistake and delete this e-mail from your system. If you are not the
> > intended recipient you are notified that disclosing, copying,
> > distributing or taking any action in reliance on the contents of this
> > information is strictly prohibited and against the law.
> >
> This email and any files transmitted with it are confidential and intended
> solely for the use of the individual or entity to whom they are addressed.
> If you are not the named addressee you should not disseminate, distribute
> or copy this e-mail. Please notify the sender or system manager by email
> immediately if you have received this e-mail by mistake and delete this
> e-mail from your system. If you are not the intended recipient you are
> notified that disclosing, copying, distributing or taking any action in
> reliance on the contents of this information is strictly prohibited and
> against the law.
>

Reply via email to