В статье рассматриваются понятия ETL, OLTP и OLAP. Проводится обзор ETL-инструментов от ведущих разработчиков и перспективы их применения в бизнесе.
Ключевые слова: ETL, ETL-инструмент, хранилище данных, ХД, DWH, OLTP, OLAP, ИТ.
Последние несколько десятилетий характеризуются экспоненциальным ростом мирового технологического развития в общем и ИТ-сферы, в частности. Подобное явление оказывает сильное влияние на все виды деятельности.
Такими же большими темпами растёт и объём обрабатываемых данных, что ведёт к количественному и качественному улучшению арсенала средств создания и совершенствования информационных систем и приложений. С одной стороны, широкий выбор ПО позволяет упростить рутинные действия, автоматизировать бизнес-процессы, а также способствует сокращению издержек предприятия, однако, в то же время, обратной стороной медали является усложнение ИТ-инфраструктуры архитектуры системного ландшафта компании.
Как следствие, сложившаяся ситуация ведёт к повышению необходимого уровня квалификации ИТ-персонала. Параллельно увеличивается и численность потребителей и источников данных. Причинами этого, на ряду с внутренними изменениями в самой компании, является рост числа внешних провайдеров информации, например, государственные или частные интернет-ресурсы, являющиеся агрегаторами полезной справочной информации.
Понятие ETL
В большинстве случаев, при загрузке данных из источников возникает необходимость хранения этих данных в одной системе и их передачи в другую систему для дальнейшей обработки и анализа. С целью осуществления этого процесса создаются хранилища данных (ХД или DWH — Data Warehouse). Хранилище данных представляет собой базу данных для сбора и обработки информации, поступающей из различных источников. Спецификой хранилищ данных является ориентированность на подготовку отчётов с целью поддержки принятия решений в организациях [1].
Поскольку в данное время существует большое количество технологий и систем, различных по своей по структуре данных и архитектуре, данные при передаче из одной системы в другую, нуждаются в преобразовании. Основываясь на вышесказанном, можно выделить три последовательных этапа процесса работы с данными:
1. Извлечение (Extract)
2. Преобразование (Transform)
3. Загрузка (Load)
Эти этапы принято обозначать аббревиатурой ETL, которая описывает один из основных процессов управления данными при их извлечении из источников и последующей загрузки в хранилище данных с целью получения достоверной информации (Рис. 1.).
Рис. 1. ETL-процесс
Остановимся на более подробном рассмотрении вышеуказанных этапов.
Извлечение данных. Этап заключается в извлечении данных из источников, при этом данные не изменяются независимо от их качества и загружаются в промежуточную область.
Преобразование данных. В процессе преобразования, данные подергаются группировке, а также преобразуются в нужный формат, согласно структуре хранилища данных. Также выполняется очистка данных, проверка на полноту, и формируются отчёты для дальнейшего исправления ошибок.
Загрузка данных. На данном этапе осуществляется загрузка трансформированных данных из промежуточной области в хранилище данных. Стоит отметить, что загрузке подвергаются не все данные, а только те, которые являются новыми или были изменены. В процессе загрузки поддерживается версионность. Это является необходимым условием получения актуальной версии записи на произвольную дату.
Довольно часто ETL становится промежуточным слоем между системами класса OLTP и хранилищем данных или OLAP-системой.
Online Transaction Processing (OLTP) — относительные небольшие транзакционные системы, обрабатывающие большие потоки данных в реальном времени.
Online analytical processing (OLAP) — системы динамического построения отчетов и документов, составления сложных запросов к базе данных для глубокого анализа.
Инструменты ETL
Вообще, для осуществления ETL-процесса допустимо использовать почти любой современный язык программирования. Однако, если требуется не разовая конвертация, а постоянно выполнять интеграцию данных, то целесообразно рассмотреть специализированное ПО. При этом стоит учитывать скорость, расширяемость и масштабируемость выбранного инструмента. Среди лидеров на рынке ETL-инструментов выделяются Oracle, Informatica и IBM. Обычно системы, созданные указанными компаниями, перекрывают потребности большинства компаний в области ETL. Исходя их этого, целесообразно выбирать ETL-инструмент основываясь на поставленных задачах, а также существующей платформе компании.
В случае преобладания продуктов IBM, стоит обратить внимание на решение Data Stage и Data Manager. Отличительной особенностью является наличие OLAP, что позволяет не строить сложные хранилища данных.
При преобладании Unix операционных систем, целесообразны решения PowerCenter и PowerMart от Informatica. Стоит отметить возможность разработки на языке Java [2,3].
При преобладании продуктов Microsoft, целесообразно применение SSIS от Microsoft. Указанный продукт располагает развитым пользовательским интерфейсом, однако не является кроссплатформенным [4].
Заключение
Сейчас системы, которые относятся к ETL, являются не только решением проблем, возникающих при вводе данных, их переносе, возникающих при появлении системных ошибок или различиях между информационными системами, которые являются источниками и потребителями данных. Стоит отметить, что указанные задачи очень важны для бизнеса, поскольку в случае наличия в компании большого количества различных ИС вероятно возникновение ошибок при передаче данных между системами, что приводит к снижению качества и достоверности данных. ETL-системы со временем стали включат в себя более широкий смысл, поскольку решаемые такими системами задачи получили высоки приоритет в компаниях. В конечном итоге бизнес пришёл к выводу о важности внедрения подобных информационных систем с целью повышения скорости принятия решений и ведения успешного конкурентного противостояния. Резюмируя вышесказанное, можно сделать вывод о том, что разработчики описанных систем должны стремиться к совершенствованию разрабатываемых систем и повышению распространённости таких систем на рынке.
Литература:
- Проектирование баз данных: Распределенные базы и хранилища данных. Лекция 2: Многомерное представление данных. Общая схема организации хранилища данных. Характеристики, типы и основные отличия технологий OLAP и OLTP. Схемы звезда и снежинка. Агрегирование // Национальный Открытый Университет «ИНТУИТ». URL: http://www.intuit.ru/studies/professional_retraining/953/courses/214/lecture/5508/ (дата обращения: 04.01.2019).
- PowerCenter // DIS Group. URL: http://www.dis-group.ru/products/informatica/powercenter/ (дата обращения: 23.10.2017) Informatica Basic Features- Power Centre,Power Mart // DATAWAREHOUSE CONCEPTS. URL: http://dwhlaureate.blogspot.ru/2012/08/informatica-basic-features.html (дата обращения: 04.01.2019).
- Oracle Data Integrator Enterprise Edition // ORACLE. URL: http://www.oracle.com/us/products/middleware/data-integration/odi-ee-11g-ds-168065.pdf (Дата обращения: 04.01.2019).
- Бергер А. Б. Microsoft SQL Server 2005 Analysis Services. OLAP и многомерный анализ данных / Бергер А. Б., Горбач И. В., Меломед Э. Л., Щербинин В. А., Степаненко В. П. / Под общ. Ред. А. Б. Бергера, И. В. Горбач. — СПб.: БХВ-Петербург, 2007.
- Основные функции ETL-систем // Хабрахабр. URL: https://habrahabr.ru/post/248231/ (Дата обращения: 04.01.2019).