Связывание валюты и измерения сущности - PullRequest
1 голос
/ 11 апреля 2019

У меня возникли разногласия с коллегой по поводу моделирования хранилища данных.

У нас есть измерение сущности с валютой «по умолчанию» и измерением валюты.

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

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

Я не согласен с этим, и он, похоже, не согласен со мной.

Что ты думаешь?

Спасибо!

1 Ответ

2 голосов
/ 11 апреля 2019

Вы правы, а ваш коллега неправ.

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

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

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

...