следует ли обрабатывать поиск ключей таблицы измерений до того, как данные попадут в промежуточную таблицу?

Я читал, что промежуточная таблица должна быть точным столбцом за столбцом, совпадающим с целевой таблицей в dw. Если это так, то лучше ли после заполнения промежуточной таблицы не выполнять последующие поиски для сопоставления ключей с ключами в таблицах измерений?

Мой вопрос, я думаю, заключается в следующем: следует ли обрабатывать поиск ключей таблицы измерений до того, как данные попадут в промежуточную таблицу?


person bep    schedule 14.04.2011    source источник
comment
Причина, по которой я спрашиваю, заключается в том, что если я откладываю поиск до тех пор, пока промежуточная таблица не будет заполнена, я могу избежать повторного поиска при извлечении из разных источников. Цена заключается в том, что моя промежуточная таблица не будет точно соответствовать целевой таблице и будет иметь столбцы из извлеченной информации, которые будут отброшены перед вставкой.   -  person bep    schedule 14.04.2011


Ответы (2)


Рекомендуется заполнять промежуточные данные нетронутыми, но это не означает, что вы не можете добавлять дополнительные столбцы метаданных. Пока промежуточные данные полностью прослеживаются до исходного непреобразованного источника, вы можете добавить любые суррогатные ключи или другие данные, относящиеся к ETL, например, время извлечения, если хотите.

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

person Datajam    schedule 14.04.2011

Мне было бы интересно узнать, где вы это прочитали. Не существует жесткого и быстрого правила, но большинство промежуточных таблиц представляют собой необработанный дамп необходимых исходных данных, иногда с некоторой базовой очисткой. На данный момент я бы воздержался от каких-либо поисков в вашем хранилище данных. Поиски должны выполняться в процессе перемещения данных из Staging в хранилище.

person grapefruitmoon    schedule 14.04.2011