Это продолжение одного из моих предыдущих постов о производительности. Но на этот раз я получил сообщение об ошибке. Я просто пытаюсь присоединиться к 9 столам.
Обратите внимание, что могу объединить 8 из 9 столов в течение 30 секунд. Но последний measurement
, который огромен в количестве (4779657 записей). Это заняло много времени из-за того же.
В конце у меня появилось следующее сообщение об ошибке, и я не смог получить вывод. 1011 * но не уверен, как использовать это здесь
ОШИБКА: не удалось расширить файл "base / 17776 / 84170.71": на устройстве не осталось места СОВЕТ: Проверьте свободное место на диске.
Но я запускаю это на сервере
Пожалуйста, найдите под запросом
DROP MATERIALIZED VIEW IF EXISTS cdm.dummy CASCADE;
CREATE MATERIALIZED VIEW cdm.dummy as
select
f.person_id,f.gender_concept_id,f.year_of_birth,f.race_concept_id,f.ethnicity_concept_id,
a.visit_occurrence_id,a.visit_concept_id,a.visit_start_datetime,a.visit_end_datetime,a.admitting_source_concept_id,a.discharge_to_concept_id,
b.condition_concept_id,b.condition_start_datetime,b.condition_end_datetime,b.condition_type_concept_id,
c.measurement_concept_id,c.measurement_datetime,c.value_as_number,c.value_as_concept_id,c.unit_concept_id,
d.drug_concept_id,d.drug_exposure_start_datetime,d.drug_exposure_end_datetime,d.drug_type_concept_id,d.quantity,
e.procedure_concept_id,e.procedure_datetime,e.procedure_type_concept_id,
g.observation_concept_id,g.observation_datetime,g.value_as_number as "observation_value_as_num", g.value_as_string as "observation_value_as_string",
h.observation_period_start_date,h.observation_period_end_date,
i.death_datetime,i.cause_concept_id
from cdm.visit_occurrence a
left outer join
cdm.condition_occurrence b
on a.person_id = b.person_id and a.visit_occurrence_id = b.visit_occurrence_id
left outer join
cdm.drug_exposure d
on a.person_id = d.person_id and a.visit_occurrence_id = d.visit_occurrence_id
left outer join
cdm.procedure_occurrence e
on a.person_id = e.person_id and a.visit_occurrence_id = e.visit_occurrence_id
left outer join
cdm.person f
on a.person_id = f.person_id
left outer join
cdm.observation g
on a.person_id = g.person_id and a.visit_occurrence_id = g.visit_occurrence_id
left outer join
cdm.observation_period h
on a.person_id = h.person_id
left outer join
cdm.death i
on a.person_id = i.person_id
left outer join
cdm.measurement c
on a.person_id = c.person_id and a.visit_occurrence_id = c.visit_occurrence_id