diff --git a/load_UMLS.sh b/load_UMLS.sh index 45792e6..05e8876 100644 --- a/load_UMLS.sh +++ b/load_UMLS.sh @@ -1,7 +1,9 @@ #!/usr/bin zsh +# change the user and database according to your parctice. + echo "Loading UMLS 2020 tables and data" psql -U postgres -d umls -f pgsql_all_tables.sql echo "Tables loaded" -psql -U jmbanda -d umls2018aa -f pgsql_index.sql +psql -U postgres -d umls -f pgsql_index.sql echo "Indexing Ready" diff --git a/pgsql_all_tables.sql b/pgsql_all_tables.sql index 9efafc7..1d2240b 100755 --- a/pgsql_all_tables.sql +++ b/pgsql_all_tables.sql @@ -7,12 +7,11 @@ This script has been tested in PostgreSQL 8.2.3 on Mac OS 10.4.10 # The script can also work with PostgreSQL 11.2 and UMLS-2020AB by Zhao Zhengyang (tsingcheng1327@live.cn) Thank you for Mr Banda and Mr Bedrick! -Please point each 'COPY' statement to your local '/tmp/META' installation directory, or wherever you have stored the .RRF files output by MetamorphoSys. This script has been tested in PostgreSQL 11.2 on Linux (Deepin 20.1, Debain 10 cored). */ -create schema if not exists _2020ab; +create schema if not exists _2020ab; /* You can change the schema name as your wish. */ set schema '_2020ab'; DROP TABLE if exists MRCOLS; @@ -28,6 +27,7 @@ CREATE TABLE MRCOLS ( dummy char(1) ); +---change the path of RRF file according the practice--- COPY MRCOLS FROM '/media/yuebing/new_dev/umls/2020AB/META/MRCOLS.RRF' WITH DELIMITER AS '|' NULL AS ''; ALTER TABLE MRCOLS DROP COLUMN dummy; @@ -339,6 +339,34 @@ CREATE TABLE MRXNW_ENG ( COPY MRXNW_ENG FROM '/media/yuebing/new_dev/umls/2020AB/META/MRXNW_ENG.RRF' WITH DELIMITER AS '|' NULL AS ''; ALTER TABLE MRXNW_ENG DROP COLUMN dummy; +DROP TABLE if exists MRXW_ENG; +CREATE TABLE MRXW_ENG ( + LAT char(3) NOT NULL, + WD varchar(100) NOT NULL, + CUI char(12) NOT NULL, + LUI char(12) NOT NULL, + SUI char(12) NOT NULL, + dummy char(1) +); +COPY MRXW_ENG FROM '/media/yuebing/new_dev/umls/2020AB/META/MRXW_ENG.RRF' WITH DELIMITER AS '|' NULL AS ''; +ALTER TABLE MRXW_ENG DROP COLUMN dummy; + +/* Because I only use English items, I deleted the load of MRXW_XXX loaders except English one. + If you want to load another language, you can rewrite the SQL expression as follows: + + DROP TABLE if exists MRXW_LAN; ---'LAN' means the language.--- + CREATE TABLE MRXW_ENG ( + LAT char(3) NOT NULL, + WD varchar(100) NOT NULL, + CUI char(12) NOT NULL, + LUI char(12) NOT NULL, + SUI char(12) NOT NULL, + dummy char(1) + ); + COPY MRXW_LAN FROM '/your/path/META/MRXW_ENG.RRF' WITH DELIMITER AS '|' NULL AS ''; + ALTER TABLE MRXW_LAN DROP COLUMN dummy; + */ + DROP TABLE if exists MRAUI; CREATE TABLE MRAUI ( AUI1 varchar(9) NOT NULL, @@ -352,7 +380,7 @@ CREATE TABLE MRAUI ( MAPIN char(1) NOT NULL, dummy char(1) ); -COPY MRAUI FROM '/media/yuebing/new_dev/umls/2020AB/META//MRAUI.RRF' WITH DELIMITER AS '|' NULL AS ''; +COPY MRAUI FROM '/media/yuebing/new_dev/umls/2020AB/META/MRAUI.RRF' WITH DELIMITER AS '|' NULL AS ''; ALTER TABLE MRAUI DROP COLUMN dummy; @@ -374,7 +402,7 @@ CREATE TABLE AMBIGLUI ( dummy char(1) ); -COPY AMBIGLUI FROM '/tmp/META/AMBIGLUI.RRF' WITH DELIMITER AS '|' NULL AS ''; +COPY AMBIGLUI FROM '/media/yuebing/new_dev/umls/2020AB/META/AMBIGLUI.RRF' WITH DELIMITER AS '|' NULL AS ''; ALTER TABLE AMBIGLUI DROP COLUMN dummy; diff --git a/pgsql_index.sql b/pgsql_index.sql index 09777e2..b6e901c 100755 --- a/pgsql_index.sql +++ b/pgsql_index.sql @@ -2,18 +2,18 @@ Created by: Yeb Havinga, MSc yhavinga@gmail.com + Modified by: Juan M. Banda juan@jmbanda.com + + Tested by: Zhao Zhengyang tsingcheng1327@live.cn */ -CREATE INDEX X_MRCOC_CUI1 ON MRCOC(CUI1); -CREATE INDEX X_MRCOC_AUI1 ON MRCOC(AUI1); -CREATE INDEX X_MRCOC_CUI2 ON MRCOC(CUI2); -CREATE INDEX X_MRCOC_AUI2 ON MRCOC(AUI2); -CREATE INDEX X_MRCOC_SAB ON MRCOC(SAB); +--- I deleted the expression where tables does not exist in this version. --- + CREATE INDEX X_MRCONSO_CUI ON MRCONSO(CUI); ALTER TABLE MRCONSO ADD CONSTRAINT X_MRCONSO_PK PRIMARY KEY (AUI); CREATE INDEX X_MRCONSO_SUI ON MRCONSO(SUI); @@ -22,9 +22,6 @@ CREATE INDEX X_MRCONSO_CODE ON MRCONSO(CODE); CREATE INDEX X_MRCONSO_SAB_TTY ON MRCONSO(SAB,TTY); CREATE INDEX X_MRCONSO_SCUI ON MRCONSO(SCUI); CREATE INDEX X_MRCONSO_STR ON MRCONSO(STR); -CREATE INDEX X_MRCXT_CUI ON MRCXT(CUI); -CREATE INDEX X_MRCXT_AUI ON MRCXT(AUI); -CREATE INDEX X_MRCXT_SAB ON MRCXT(SAB); CREATE INDEX X_MRDEF_CUI ON MRDEF(CUI); CREATE INDEX X_MRDEF_AUI ON MRDEF(AUI); ALTER TABLE MRDEF ADD CONSTRAINT X_MRDEF_PK PRIMARY KEY (ATUI); @@ -56,23 +53,7 @@ ALTER TABLE MRSTY ADD CONSTRAINT X_MRSTY_PK PRIMARY KEY (ATUI); CREATE INDEX X_MRSTY_STY ON MRSTY(STY); CREATE INDEX X_MRXNS_ENG_NSTR ON MRXNS_ENG(NSTR); CREATE INDEX X_MRXNW_ENG_NWD ON MRXNW_ENG(NWD); -CREATE INDEX X_MRXW_BAQ_WD ON MRXW_BAQ(WD); -CREATE INDEX X_MRXW_CZE_WD ON MRXW_CZE(WD); -CREATE INDEX X_MRXW_DAN_WD ON MRXW_DAN(WD); -CREATE INDEX X_MRXW_DUT_WD ON MRXW_DUT(WD); CREATE INDEX X_MRXW_ENG_WD ON MRXW_ENG(WD); -CREATE INDEX X_MRXW_FIN_WD ON MRXW_FIN(WD); -CREATE INDEX X_MRXW_FRE_WD ON MRXW_FRE(WD); -CREATE INDEX X_MRXW_GER_WD ON MRXW_GER(WD); -CREATE INDEX X_MRXW_HEB_WD ON MRXW_HEB(WD); -CREATE INDEX X_MRXW_HUN_WD ON MRXW_HUN(WD); -CREATE INDEX X_MRXW_ITA_WD ON MRXW_ITA(WD); -CREATE INDEX X_MRXW_JPN_WD ON MRXW_JPN(WD); -CREATE INDEX X_MRXW_NOR_WD ON MRXW_NOR(WD); -CREATE INDEX X_MRXW_POR_WD ON MRXW_POR(WD); -CREATE INDEX X_MRXW_RUS_WD ON MRXW_RUS(WD); -CREATE INDEX X_MRXW_SPA_WD ON MRXW_SPA(WD); -CREATE INDEX X_MRXW_SWE_WD ON MRXW_SWE(WD); CREATE INDEX X_AMBIGSUI_SUI ON AMBIGSUI(SUI); CREATE INDEX X_AMBIGLUI_LUI ON AMBIGLUI(LUI); VACUUM ANALYZE; \ No newline at end of file