2016-09-30 23 views
0

Я новичок в моделировании размерных данных. У меня есть одно измерение и две таблицы фактов:Соедините одно измерение с несколькими таблицами фактов с разным зерном

Одна таблица фактов (факт1) соединена с размером с помощью суррогатного ключа. Здесь нет проблем. Я не могу понять, что является лучшим способом присоединиться к измерению во вторую таблицу фактов (факт2). Если бы это был дизайн реляционной базы данных, я бы использовал таблицу NaturalKey2 on fact2: (NaturalKey1 + NaturalKey2 сделать запись уникальной в таблице размеров).

т.е.

DIMENSION 
SurogateKey | NaturalKey1 | NaturalKey2 | Current 
1 | a1 | b1 | 0 
2 | a1 | b2 | 1 
3 | a2 | b3 | 1 

FACT1

(fk to Dimension) 
1 
2 
3 

FACT2 
a1 ? 
a2 ? 

ли я использовать измерение моста, который имеет только NaturalKey2 и использовать SK из этого измерения в fact2? Что-то вроде этого

DIMENSION 2

SurogateKey | NaturalKey2 
1 | a1 
2 | a2 
+0

Это лучше всего подходит при задании таких вопросов, как: В бизнесе, как данные «fact2» знают, к каким данным измерений он принадлежит? Каков общий бизнес-ключ? Есть ли способ иметь только одну таблицу фактов для уменьшения сложности, поскольку, как представляется, общий ключ для обоих? Почему существует суррогатный ключ к измерению? Что это будет отображаться в бизнесе (нет ли другого правила для соответствия размерности)? – tobi6

+0

вам не нужны внешние ключи в DW. См. «Параметры с возможностью горячей замены» –

ответ

0

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

Я Бесполезным «Я не заметил точку вашего вопроса, изначально, где вы упоминали, что второй факт был другого зерна. Размерный способ сделать это состоит в том, чтобы иметь второе измерение на этом более высоком уровне, который имеет только столбцы, соответствующие этому зерну. Оба измерения «соответствуют» в том смысле, что заголовки и содержимое полей выравниваются.