У меня есть проект, в котором предприятия проверяют что-либо от одного раза в 6 месяцев до одного раза в 3 года, и результаты оценочной карты проверяются в виде записи в медленно изменяющейся таблице измерений типа 2 [tblInspections]
с использованием StartDate
и EndDate
для охвата периода между проверками, для которого действительна эта карта показателей. Таблица проверок связана с [tblEstablishments], который содержит другие сведения о других фиксированных измерениях, таких как местоположение и тип бизнеса.
Таким образом, в настоящее время мы предоставляем сводные отчеты о текущей ситуации (where EndDate is null
), а также аудиторские отчеты за историю любого предприятия (On EstablishmentID
)
Моя следующая задача - предоставить более подробные аналитические отчеты о тенденциях результатов системы показателей, и мне нужно предоставить исторические агрегированные результаты ситуации в последний день каждого месяца.
Моя проблема в том, что, несмотря на то, что я точно знаю, чего я хочу, я теперь не уверен, как туда добраться.
1) Начать с написания процесса ETL для построения куба на основе всех исторических результатов, определяющих, какими были бы все агрегаты в конце каждого месяца?
2) Могу ли я тогда просто обрабатывать текущие записи в конце каждого месяца, чтобы эффективно добавлять новый срез в конец существующего куба без повторной обработки с нуля? (если так, как?)
3) Есть ли другой способ сделать это? Есть ли у служб Analysis Services более эффективные способы автоматического управления SCD при определении исторического статуса в любой момент времени путем выбора правильной записи из нескольких записей с начальной и конечной датами?
Буду очень признателен за любые советы и ссылки на учебники, связанные с этим.