каков предлагаемый порядок извлечения данных измерений/фактов?

Насколько я понимаю, сначала должны быть извлечены измерения, а затем должны быть извлечены факты. Таким образом, внешние ключи по-прежнему будут учитываться в промежуточной области.

При загрузке следует использовать ту же последовательность по тем же очевидным причинам. Поэтому. окончательный порядок должен выглядеть так -

Извлечь измерение -> Извлечь факт -> Загрузить измерение -> Загрузить факт

Пока я просматривал документацию DAC, я наткнулся на кусок, где говорится, что порядок должен быть таким =

извлечь факт -> извлечь измерение -> загрузить измерение -> загрузить факт

Идеи/предложения/мнения..


person Raghav    schedule 03.05.2012    source источник


Ответы (2)


Я подозреваю, что идея автора может заключаться в следующем: когда вы загружаете новые данные, сначала определите интересующие вас факты, чтобы убедиться, что вы обрабатываете и загружаете минимальное количество данных. Затем выведите свои измерения из этих фактов, чтобы заполнить только те значения измерений, которые вам действительно нужны.

Я понятия не имею, верна ли эта интерпретация, но я могу представить, что кто-то выдвигает такой аргумент. С другой стороны, часто очень интересно узнать, какие значения измерений не имеют соответствующих фактов, например. клиенты, которые еще не купили новый продукт.

Таким образом, то, как именно вы обрабатываете данные в своей среде, будет во многом зависеть от ваших собственных требований, и я бы не слишком беспокоился о том, что говорится в одном документе.

person Pondlife    schedule 03.05.2012

Возможно, слишком поздно, но на всякий случай, если кто-то столкнется с этим вопросом, вот некоторые пояснения.

Хранилища данных обычно строятся на системе хранения, которая не обеспечивает ссылочную целостность либо потому, что это ее неотъемлемая характеристика (Redshift, Hive и т. д.), либо потому, что, если система позволяет это (например, классическая СУБД), они вызовут дополнительные накладные расходы. /влияет на производительность.

Таким образом, предлагаемый порядок

extract fact -> extract dimension -> load dimension -> load fact

стремится гарантировать ссылочную целостность.

Если мы сначала извлечем факты, мы удостоверимся, что после извлечения измерений все факты будут указывать на допустимое измерение/существующее измерение на складе.

Сначала загрузив измерения (предполагая методологию моделирования Кимбалла), как только вы загрузите факты, вы сможете соединить их с соответствующим измерением и успешно получить суррогатный ключ измерения.

person nervokid    schedule 04.08.2018