Я новичок в дизайне витрин данных и мне нужно прояснить несколько концепций.
Я немного ознакомился с моделированием измерений, где я вижу, что таблицы фактов хранят ссылки на внешние ключи для таблиц измерений.
Теперь предположим, что у меня есть таблица измерений phonenumber и таблица измерений phone_extension. (Эти таблицы имеют разные детали, из-за которых я не могу их объединить)
Как я понимаю, обе эти таблицы измерений будут иметь целочисленные первичные ключи для лучшей производительности, а таблица фактов будет иметь свой собственный целочисленный первичный ключ, а также хранить ссылки на внешние ключи на эти таблицы измерений.
Но предположим, что у меня есть ситуация, когда не все телефонные номера имеют отношение phone_extension к ним. (некоторые телефонные номера не должны иметь добавочного номера)
Для телефонных номеров, которые имеют добавочный номер, таблица фактов будет иметь ссылки на внешние ключи для обеих таблиц измерений, но как мне отразить ситуацию, когда есть только телефонные номера и нет добавочных номеров (и наоборот, то есть добавочный номер без телефонных номеров) ?
Должен ли я собирать такую информацию с помощью номера телефона FK в таблице фактов, имеющей значение и внешний ключ phone_extension null ?? Или такие не связанные объекты не записаны в таблицах фактов?
Также мне нужно сгенерировать отчет об этом витрине данных. Поэтому начать с запроса таблицы фактов и получения значений ключа измерения или составить отчет прямо из таблицы измерения?
Спасибо за ваше время в чтении этого!
Цени любую помощь!