ETL-продукт IT_ONE для наполнения хранилищ данных
Компания IT_ONE («ИТ1-Технологии») представила разработанный ею ETL-продукт OneData для перемещения и интеграции данных в хранилищах. Новый фреймворк поддерживает большинство популярных типов источников и приемников данных, имеет высокую скорость развертывания и отличается простотой настройки.
Для размещения и обработки огромных массивов данных, которые генерируют в своей деятельности коммерческие компании, используются озера данных (Data Lake), сложные распределенные хранилища, аналитические системы и другие технологии. При этом важна регулярная актуализация и пополнение этих данных из внешних систем-источников, разнородных по типу взаимодействия с ними и типу передаваемых данных.
OneData оптимизирует деятельность ИТ-команд компаний-заказчиков, занимающихся наполнением хранилищ данных. Это альтернатива западным проприетарным продуктам, многие из которых сегодня недоступны в России, а также продуктам на основе открытого ПО, которые могут не подходить заказчику по функциональности.
OneData состоит из четырех основных структурных компонентов: web-интерфейса конфигурирования, базы данных конфигураций потоков перемещения данных, сервиса обработки данных на базе Spark и оркестратора потоков на базе Apache Airflow. Решение поддерживает наиболее популярные в России источники и приемники данных. Например, оно работает с JDBC-источниками и брокером сообщений Apache Kafka, а в качестве приемников могут выступать файловые хранилища (HDFS, S3, FTP), JDBC, таблица Hive.
Администратор формирует в OneData конфигурацию потока перемещения данных, которая сохраняется в БД, и расписание запуска потока. В том же конфигурационном файле можно указать дополнительные настройки: например, количество ресурсов, которое будет запрашивать spark-процесс, преобразования типов полей и т. д. Параллельно происходит формирование DAG-файла и импорт его в Airflow для постановки потока на расписание. По расписанию происходит вызов Spark-процесса, который в соответствии с заданной конфигурацией перемещает данные из источника в приемник. Использование Spark обеспечивает высокую скорость перемещения: эффективное распараллеливание, получение и запись данных.
При сохранении в файловую систему фреймворк поддерживает самые разные форматы файлов: orc, parquet, csv, json, deltalake. Чтение из Kafka может сопровождаться валидацией входящих json-сообщений по указанной json-схеме. Сообщения, не прошедшие валидацию, фреймворк может сложить в указанный DLQ-топик (Dead Letter Queue topic).
В числе преимуществ нового решения – оперативное развертывание. Основной Spark-процесс можно запустить даже локально, но для использования всех преимуществ рекомендуется Hadoop-кластер с YARN или Kubernetes-кластер. Конфигурация процессов перемещения данных может храниться в json-файлах или в любой доступной БД PostgreSQL. Для оркестрации потоков используется Airflow, который можно развернуть рядом или использовать уже имеющийся.
В соответствии с «дорожной картой» развития продукта компания IT_ONE планирует дополнить OneData такими функциями, как маскирование данных, перенос изменений в метаданных, поддержка новых типов источников и приемников, автоматическая проверка консистентности перемещенных данных. Также готовится ряд технологических доработок, которые должны облегчить эксплуатацию фреймворка.