Моделирование хранилища данных - согласованность между двумя таблицами фактов

У меня возникли проблемы с проектированием моего хранилища данных. Вот контекст:

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

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

Финансы будут использовать только финансовую информацию, менеджер проекта может использовать оба типа информации.

Основываясь на этой информации, у меня есть много возможных сценариев, который является лучшим?

1-й сценарий: схема звезды

В этом сценарии у меня есть две отдельные таблицы для финансов и управления проектами. Но дело в том, что мне придется дублировать ссылку на измерения (оборудование, клиент и т. Д.), Так как именно финансы объявляют сделки, и эта информация должна оставаться непротиворечивой для одной и той же сделки.

Схема первого сценария

2 сценарий: одна общая таблица

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

3-й сценарий: схема снежинки

Мы также могли бы добавить таблицу "Сделка", содержащую все ссылки на другие измерения (клиент, оборудование и т. Д.).

Схема третьего сценария

Спасибо за советы по любому полезному совету!

0 ответов

Другие вопросы по тегам