`

СПЕЦИАЛЬНЫЕ
ПАРТНЕРЫ
ПРОЕКТА

Архив номеров

Как изменилось финансирование ИТ-направления в вашей организации?

Best CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Дмитрий Гудков

Ликбез ИТ-архитектора: Slowly Changing Dimensions

+33
голоса

Общаясь по долгу службы с проектировщиками и разработчиками аналитических хранилищ данных в украинских предприятиях, замечаю, что некоторые понятия и термины, широко используемые в этой области на более развитых западных рынках, остаются за пределами внимания отечественных разработчиков. Хотя, естественно, многие решаемые проблемы совершенно интернациональны и имеют одни и те же корни, независимо от страны. Посему родилась идея сделать серию постов в своем блоге, под кодовым названием «Ликбез», цель которых не сколько авторитетно научить кого-либо чему-либо (я остаюсь больше теоретиком, чем практиком), сколько обратить внимание на некоторые устоявшиеся в мире практики, а также внести посильную лепту в унификации отечественной терминологии разработчиков ХД с общепринятой.

Тема сегодняшнего поста – понятие Slowly Changing Dimensions (SCD), которое можно перевести на русский как «медленно изменяющиеся размерности» или «редко меняющиеся измерения». SCD применяют, когда необходимо корректно отразить изменение размерности анализа при построении отчетов. Для иллюстрации SCD чаще всего используют пример с неким менеджером по продажам (М), успешно работавшим в филиале А, но впоследствии переведенным в филиал В, для которого характерны меньшие объемы продаж. Соответственно, значение размерности «филиал» для менеджера М сменилось с А на В. Однако, если в модели данных не учесть правильно факт перехода М из одного филиала в другой, то при попытке оценить прирост продаж в филиалах мы получим некорректные данные. В этом случае в продажах прошлого периода филиала А не будут учтены высокие продажи менеджера М, а прирост продаж в филиале В будет неадекватно низким, так как в базу прироста (прошлый период) попадут продажи М, сделанные в филиале А. Для решения подобной задачи придумали целых 6 способов, которые бесхитростно назвали SCD0, SCD1, SCD2, SCD3, SCD4 и SCD6. Впрочем, жизнеспособными можно назвать только парочку из них. Подробное описание этих способов есть как специализированной литературе, так и в интернете, включая википедию, поэтому здесь углубляться в детали нет смысла.

Напоследок замечу, что задача правильного отражения Slowly Changing Dimensions настолько часто встречается на практике, что многие производители ETL-инструментов включили генератор SCD в стандартные библиотеки элементов преобразования, дабы облегчить жизнь разработчикам и упростить написание соответствующих ETL-процедур. В частности, IBM Information Server (DataStage) обзавелся SCD stage начиная с версии 8.0.

+33
голоса

Напечатать Отправить другу

Читайте также

Так держать! Все новое и прогрессивное должно носить публичный характер. Не всегда у молодых специалистов существуют наставники способные вызвать "дух исследователя". Мой опыт преподавания в отдаленных регионах нашей страны свидетельствует о том, что большинство преподавателей исповедуют технологические аспекты, которые пришлись на их молодость (а это 20 - 40 лет тому назад).
Откуда же молодым людям подчерпуть "современных" знаний?
Нужно открыть глаза пошире и распахнуть уши.

 
 
IDC
Реклама

  •  Home  •  Рынок  •  ИТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Сети  •  Безопасность  •  Наука  •  IoT