pedsnet
The fact_relationship.fact_id_1 and fact_relationship.fact_id_2 are not indexed, which might affect some joins to the domain tables.
Queries that need to look at a large portion of the rows will not be sped up, of course, because table scans will be (and should be) preferred.
There are a number of foreign keys in the pedsnet data model pointing at the concept table that do not have indexes, but these may not be used very often.
pcornet
There is a greater variety of foreign keys without indexes in the pcornet data model - impact unknown.
PS
FWIW, here is the output of https://github.com/pgexperts/pgx_scripts/blob/master/indexes/fk_no_index.sql on pedsnet_dcc in production (v2.0). See http://www.databasesoup.com/2014/11/finding-foreign-keys-with-no-indexes.html for motivation.
| schema_name |
table_name |
fk_name |
issue |
table_mb |
writes |
table_scans |
parent_name |
parent_mb |
parent_writes |
cols_list |
indexdef |
| pedsnet_cdm |
measurement |
fpk_measurement_concept_s |
no index |
75634 |
287745415 |
24 |
concept |
297 |
2162881 |
{measurement_source_concept_id} |
|
| pedsnet_cdm |
measurement |
fpk_measurement_operator |
no index |
75634 |
287745415 |
24 |
concept |
297 |
2162881 |
{operator_concept_id} |
|
| pedsnet_cdm |
measurement |
fpk_measurement_type_concept |
no index |
75634 |
287745415 |
24 |
concept |
297 |
2162881 |
{measurement_type_concept_id} |
|
| pedsnet_cdm |
measurement |
fpk_measurement_unit |
no index |
75634 |
287745415 |
24 |
concept |
297 |
2162881 |
{unit_concept_id} |
|
| pedsnet_cdm |
measurement |
fpk_measurement_value |
no index |
75634 |
287745415 |
24 |
concept |
297 |
2162881 |
{value_as_concept_id} |
|
| pedsnet_cdm |
drug_exposure |
fpk_drug_concept_s |
no index |
32675 |
88267284 |
25 |
concept |
297 |
2162881 |
{drug_source_concept_id} |
|
| pedsnet_cdm |
drug_exposure |
fpk_drug_dose_unit_concept |
no index |
32675 |
88267284 |
25 |
concept |
297 |
2162881 |
{dose_unit_concept_id} |
|
| pedsnet_cdm |
drug_exposure |
fpk_drug_route_concept |
no index |
32675 |
88267284 |
25 |
concept |
297 |
2162881 |
{route_concept_id} |
|
| pedsnet_cdm |
drug_exposure |
fpk_drug_type_concept |
no index |
32675 |
88267284 |
25 |
concept |
297 |
2162881 |
{drug_type_concept_id} |
|
| pedsnet_cdm |
observation |
fpk_observation_concept_s |
no index |
22639 |
132748028 |
25 |
concept |
297 |
2162881 |
{observation_source_concept_id} |
|
| pedsnet_cdm |
observation |
fpk_observation_qualifier |
no index |
22639 |
132748028 |
25 |
concept |
297 |
2162881 |
{qualifier_concept_id} |
|
| pedsnet_cdm |
observation |
fpk_observation_type_concept |
no index |
22639 |
132748028 |
25 |
concept |
297 |
2162881 |
{observation_type_concept_id} |
|
| pedsnet_cdm |
observation |
fpk_observation_unit |
no index |
22639 |
132748028 |
25 |
concept |
297 |
2162881 |
{unit_concept_id} |
|
| pedsnet_cdm |
observation |
fpk_observation_value |
no index |
22639 |
132748028 |
25 |
concept |
297 |
2162881 |
{value_as_concept_id} |
|
| pedsnet_cdm |
procedure_occurrence |
fpk_procedure_concept_s |
no index |
18771 |
54276701 |
30 |
concept |
297 |
2162881 |
{procedure_source_concept_id} |
|
| pedsnet_cdm |
procedure_occurrence |
fpk_procedure_modifier |
no index |
18771 |
54276701 |
30 |
concept |
297 |
2162881 |
{modifier_concept_id} |
|
| pedsnet_cdm |
procedure_occurrence |
fpk_procedure_type_concept |
no index |
18771 |
54276701 |
30 |
concept |
297 |
2162881 |
{procedure_type_concept_id} |
|
| pedsnet_cdm |
condition_occurrence |
fpk_condition_concept_s |
no index |
15294 |
83937583 |
37 |
concept |
297 |
2162881 |
{condition_source_concept_id} |
|
| pedsnet_cdm |
condition_occurrence |
fpk_condition_type_concept |
no index |
15294 |
83937583 |
37 |
concept |
297 |
2162881 |
{condition_type_concept_id} |
|
| pedsnet_cdm |
visit_occurrence |
fpk_visit_concept_s |
no index |
14940 |
76452217 |
33 |
concept |
297 |
2162881 |
{visit_source_concept_id} |
|
| pedsnet_cdm |
visit_occurrence |
fpk_visit_type_concept |
no index |
14940 |
76452217 |
33 |
concept |
297 |
2162881 |
{visit_type_concept_id} |
|
| pcornet_cdm |
diagnosis |
fk_diagnosis_encounterid |
no index |
10320 |
75437911 |
9 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
diagnosis |
fk_diagnosis_patid |
no index |
10320 |
75437911 |
9 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
encounter |
fk_encounter_patid |
no index |
9419 |
76452217 |
15 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
vital |
fk_vital_encounterid |
no index |
8029 |
62251061 |
15 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
vital |
fk_vital_patid |
no index |
8029 |
62251061 |
15 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
prescribing |
fk_prescribing_encounterid |
no index |
5270 |
35126300 |
7 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
prescribing |
fk_prescribing_patid |
no index |
5270 |
35126300 |
7 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
procedures_old |
fk_procedures_encounterid_old |
no index |
4683 |
49028003 |
4 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
procedures_old |
fk_procedures_patid_old |
no index |
4683 |
49028003 |
4 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
procedures |
fk_procedures_encounterid |
no index |
4675 |
133819723 |
17 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
procedures |
fk_procedures_patid |
no index |
4675 |
133819723 |
17 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
dispensing |
fk_dispensing_patid |
no index |
1365 |
15497385 |
11 |
demographic |
265 |
3421157 |
{patid} |
|
| pcornet_cdm |
dispensing |
fk_dispensing_prescribingid |
no index |
1365 |
15497385 |
11 |
prescribing |
5270 |
35126300 |
{prescribingid} |
|
| pedsnet_cdm |
person |
fpk_person_ethnicity_concept |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{ethnicity_concept_id} |
|
| pedsnet_cdm |
person |
fpk_person_ethnicity_concept_s |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{ethnicity_source_concept_id} |
|
| pedsnet_cdm |
person |
fpk_person_gender_concept |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{gender_concept_id} |
|
| pedsnet_cdm |
person |
fpk_person_gender_concept_s |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{gender_source_concept_id} |
|
| pedsnet_cdm |
person |
fpk_person_race_concept |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{race_concept_id} |
|
| pedsnet_cdm |
person |
fpk_person_race_concept_s |
no index |
719 |
3422157 |
154 |
concept |
297 |
2162881 |
{race_source_concept_id} |
|
| pcornet_cdm |
condition |
fk_condition_encounterid |
no index |
657 |
6985111 |
5 |
encounter |
9419 |
76452217 |
{encounterid} |
|
| pcornet_cdm |
condition |
fk_condition_patid |
no index |
657 |
6985111 |
5 |
demographic |
265 |
3421157 |
{patid} |
|
| pedsnet_cdm |
observation_period |
fpk_observation_period_concept |
no index |
89 |
850086 |
5 |
concept |
297 |
2162881 |
{period_type_concept_id} |
|
| pedsnet_cdm |
provider |
fpk_provider_care_site |
no index |
45 |
357174 |
19 |
care_site |
1 |
4116 |
{care_site_id} |
|
| pedsnet_cdm |
provider |
fpk_provider_gender |
no index |
45 |
357174 |
19 |
concept |
297 |
2162881 |
{gender_concept_id} |
|
| pedsnet_cdm |
provider |
fpk_provider_gender_s |
no index |
45 |
357174 |
19 |
concept |
297 |
2162881 |
{gender_source_concept_id} |
|
| pedsnet_cdm |
provider |
fpk_provider_specialty |
no index |
45 |
357174 |
19 |
concept |
297 |
2162881 |
{specialty_concept_id} |
|
| pedsnet_cdm |
provider |
fpk_provider_specialty_s |
no index |
45 |
357174 |
19 |
concept |
297 |
2162881 |
{specialty_source_concept_id} |
|
| pcornet_cdm |
enrollment |
fk_enrollment_patid |
questionable index |
42 |
850086 |
5 |
demographic |
265 |
3421157 |
{patid} |
CREATE UNIQUE INDEX xpk_enrollment ON pcornet_cdm.enrollment USING btree (patid, enr_start_date, enr_basis) |
pedsnet
The
fact_relationship.fact_id_1andfact_relationship.fact_id_2are not indexed, which might affect some joins to the domain tables.Queries that need to look at a large portion of the rows will not be sped up, of course, because table scans will be (and should be) preferred.
There are a number of foreign keys in the
pedsnetdata model pointing at theconcepttable that do not have indexes, but these may not be used very often.pcornet
There is a greater variety of foreign keys without indexes in the pcornet data model - impact unknown.
PS
FWIW, here is the output of https://github.com/pgexperts/pgx_scripts/blob/master/indexes/fk_no_index.sql on pedsnet_dcc in production (v2.0). See http://www.databasesoup.com/2014/11/finding-foreign-keys-with-no-indexes.html for motivation.