Размер схемы снежинки

Это первый раз, когда я работаю над проектом BI, и продукты Pentaho мне еще не знакомы, поэтому мне нужно было знать, правильны ли следующие модели, и что я не столкнусь с трудностями позже при создании иерархий на BI-сервере.!

Спасибо.

Измерение времени:

Измерение сложности, каждое осложнение может иметь подсложнения:

1 ответ

Не хорошая идея.

Ваша таблица измерений календаря должна выглядеть следующим образом:

create table calendar (
  calendar_id int primary key,
  name text not null unique,
  date_iso date unique,
  year smallint,
  quarter smallint,
  month smallint,
  month_name text
  ...
);

insert into calendar values 
(0, 'N/A', null, null, null, null, null),
(20130826, 'Aug 26, 2013', '2013-08-26', 2013, 3, 8, 'August');

Смысл хранилища данных заключается в упрощении анализа. Заставить вашего аналитика BI сделать три соединения, чтобы получить дату, не облегчает анализ.

calendar_id это "умный ключ", то есть не бессмысленный суррогатный ключ. Ваша календарная таблица является единственной таблицей, в которой должен использоваться смарт-ключ, поскольку он значительно облегчает разбиение таблицы по дате. Также обратите внимание на пустые поля, в которых указана дата "N/A" (не доступно). Нет года 0, поэтому 0 - это хорошее значение "N / A".

По сути, у вас должен быть один уровень нормализации: ваши таблицы фактов и таблицы измерений.

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