Медленно меняющееся измерение — что такое реализация Pure type 6

Я пытаюсь понять чистую реализацию SCD типа 6 из WIKI, в которой говорится в основном о трех пунктах.

  1. Наличие суррогатного ключа типа 2 для каждого временного интервала может вызвать проблемы, если размерность может быть изменена.
  2. Чистая реализация типа 6 не использует это, но использует суррогатный ключ для каждого элемента основных данных (например, у каждого уникального поставщика есть один суррогатный ключ).
  3. Это позволяет избежать влияния любых изменений в основных данных на существующие данные транзакции.

Однако я не могу четко представить себе эти проблемы.


person Shantanu Gupta    schedule 27.06.2013    source источник


Ответы (1)


Суть "типа 6" или "гибридной" обработки заключается в том, что вы отслеживаете изменения, добавляя новую строку для каждой новой версии, а затем обновляете некоторые атрибуты предыдущих версий, чтобы отразить текущее состояние данные. Таким образом, данные можно фильтровать и объединять во всех версиях для целей отчетности.

Здесь есть еще одно объяснение: http://www.kimballgroup.com/wp-content/uploads/2012/05/DT15CombiningSCD.pdf

Пример:

Пример типа 6

http://www.kimballgroup.com/2013/02/05/design-tip-152-slowly-changing-dimension-types-0-4-5-6-7/

person nvogel    schedule 27.06.2013
comment
Если я обновлю некоторые атрибуты предыдущей версии, как это будет отражать текущее состояние данных? Более того, почему суррогатный ключ выбран таким же, как гибридное моделирование типа 2 или типа 6. - person Shantanu Gupta; 28.06.2013
comment
Добавлен связанный пример (обратите внимание на столбец «Название текущего отдела») - person nvogel; 28.06.2013
comment
пример, который вы цитируете, представляет собой гибрид типа 6, то есть тип 1,2,3. Принимая во внимание, что я изучаю сценарий чистого типа 6, в котором нет текущих исторических столбцов. Вместо этого они используют только один столбец. Более того, в этом примере я не могу понять, почему мы обновляем текущий столбец записи с истекшим сроком действия. - person Shantanu Gupta; 29.06.2013
comment
@ShantanuGupta, понятно. Я нигде не видел ничего под названием Pure Type 6, кроме как в Википедии. Остерегайтесь принимать за чистую монету все, что вы читаете в Википедии. Суть в том, чтобы иметь суррогатный ключ, который не меняется со временем. - person nvogel; 29.06.2013
comment
Под чистым типом 6 я подразумеваю отсутствие исторической колонки. Зачем нам нужна историческая колонка. - person Shantanu Gupta; 30.06.2013
comment
Исторический столбец «Название отдела» сохраняет состояние данных в том виде, в каком оно было. В столбце Текущее название отдела указано текущее значение. Таким образом, отчеты могут создаваться либо на основе значения «как есть», либо на основе значения «как было». Например, для финансовой и нормативной отчетности версия данных «как было» может быть столь же важна, как и сама. - person nvogel; 30.06.2013
comment
Разве у нас не должно быть одного столбца, то есть Current. И всякий раз, когда происходит обновление, мы просто удаляем эту запись и делаем новую запись с обновленными значениями. Таким образом, у нас есть предыдущий ключ как история и последняя запись как текущая? - person Shantanu Gupta; 30.06.2013
comment
@ShantanuGupta, но если вам нужно свернуть или отфильтровать все версии строки, вам понадобится значение, одинаковое для всех версий. Вот почему вы можете захотеть сохранить как текущие, так и исторические атрибуты. - person nvogel; 04.07.2013
comment
Но у нас есть один атрибут в качестве естественного ключа. Используя естественный ключ, мы не можем всегда свертываться? - person Shantanu Gupta; 05.07.2013
comment
По ключевым характеристикам, да. Но в приведенном примере текущее название отдела не является ключевым атрибутом. - person nvogel; 05.07.2013