Я сейчас читаю книгу Кимбалла по хранилищу данных и в то же время я смотрю на проектирование хранилища данных для следующего примера:
1: Клиент может купить продукты, которые сгенерируют счет-фактуру, а затем - строку инвентаризации. Примечание. Строка инвентаря является таблицей накопления, т. Е. Если они заказывают Продукт A с количеством 5, а затем еще 5, то будет 2 строки счета и одна строка инвентаря в 10 единиц.
Таким образом, исходя из описанного сценария, будет подходящим следующий дизайн:
1. Клиентское измерение
2. Размер продукта
3. Измерение даты
3. Факт фактуры
4. Инвентарный факт
Теперь, скажем, я хочу узнать ответы на такие вопросы, как
1. Какие клиенты в настоящее время имеют нулевой запас, но сгенерировали счета за последние 3 месяца. Будут и другие подобные вопросы, подобные этим.
2. Какие клиенты имеют продукт А, но не имеют продукт Б
Судя по книге Кимбалла, кажется, что между двумя таблицами фактов должно быть какое-то соединение, например, подмножество?
Это может показаться довольно неэффективным, особенно из-за огромного размера записей между двумя таблицами фактов. Это правильный подход?