Создание витрины данных
Одной из основных сложностей при создании витрин является организация трех ключевых этапов - извлечения данных из исходных систем (extract), преобразования их в нужную форму (transform) и последующей загрузки в целевую систему (load). Для этого используется специальный ETL-инструмент (Extract, Transform, Load).
Извлечение данных требует точного знания структуры исходной системы. Как правило, разработчику известны подробности построения собственной учетной системы, но иногда приходится выполнять интеграцию и c другими источниками.
Преобразование данных необходимо, так как недостающие, неполные или неточные данные ухудшают качество анализа, а следовательно, не способствуют принятию правильных бизнес решений. Процесс преобразования может заключать в себе множество функций:
- реструктурирование файлов данных, записей и полей;
- удаление избыточных данных;
- декодирование и трансляцию значений полей;
- повышение качества представления читаемых данных;
- проверку их достоверности;
- расчет новых значений для одного или нескольких исходных столбцов;
- упрощение данных и изменение их типов.
Преобразование также подразумевает исправление ошибок, выдачу в систему предупреждений о необходимости поддержки целостности и полезности данных.
После установки ETL-инструмент автоматически запускается по определенному расписанию.
Преобразованные данные загружаются в целевые витрины данных и становятся доступными пользователю для анализа и отчетности. При этом должна быть установлена поддержка информации об измерениях для соответствующей платформы хранения/доступа.
Загрузка позволяет разработчикам сочетать OLAP для реляционных моделей и аналитику для "фирменных" баз данных, используя тем самым лучшие возможности обеих технологий и обеспечивая свободу разделения информации между базами и использования средств доступа в соответствии с конкретными требованиями. Эта гибкая возможность позволяет пересылать данные в несколько баз одновременно, например, в тех случаях, когда различным группам пользователей нужно передать различные сводки данных.