Выбор ответа Senior ER-модели и нормализация обновлено
История изменений справочника
Вопрос
В хранилище данных отчёты по продажам нужно строить по региону, к которому клиент относился на момент покупки, хотя клиенты переезжают. Какой подход к таблице клиентов?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: SCD типа 2: новая версия строки с периодом действия. SCD тип 2 хранит версии с датами начала и конца действия, и факт продажи связывается с версией, актуальной на дату покупки.
Варианты ответа
- SCD типа 2: новая версия строки с периодом действияправильный ответ
- Удалять клиента при переезде и создавать заново
- Перезаписывать регион в строке клиента (SCD типа 1)
- Хранить только текущий регион и пересчитывать отчёты
Разбор
SCD тип 2 хранит версии с датами начала и конца действия, и факт продажи связывается с версией, актуальной на дату покупки. Перезапись (тип 1) теряет историю, и прошлые продажи «переедут» в новый регион. Пересчёт по текущему региону даёт ту же ошибку. Удаление ломает связи.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.