Сравнение нескольких ETL
MS SSIS
Преимущества
- Встроенные возможности по запуску SQL скриптов и исполняемого кода позволяет решать сложные бизнес-сценарии.
- Входит в Standard Edition MS SQL Server.
- Надежный инструмент разработки с интуитивно понятным интерфейсом.
- Дает широкие возможности по переиспользованию SQL-скриптов и ранее созданных пакетов.
- Позволяет автоматизировать подготовку однотипных пакетов загрузки с использованием специального языка BIML, что значительно ускоряет разработку.
Недостатки
- Потребуются дополнительные лицензии, если возникнет необходимость разворачивать SSIS на отдельном сервере.
- SSIS работает только в среде Microsoft Windows (версия MS SQL Server для Linux не готова к промышленному использованию).
- SSIS может быть развернут только на базе СУБД Microsoft SQL Server.
- SQL server и SSIS отлично функционируют, если имеют достаточное количество ресурсов. Если вы используете виртуальные серверы и можете легко добавлять CPU / RAM / Диски, то во что бы то ни стало, соберите их вместе и управляйте ресурсами, чтобы они не мешали друг другу. Если у вас нет возможности сделать это, лучше использовать SSIS на отдельном сервере.
- Не всегда просто решается проблема с коннекторами к БД третьих фирм.
Pentaho
Преимущества
- Простота использования и легкость обучения. Один и самых user-friendly интерфейсов на рынке ETL/
- Широкие возможности по преобразованию данных, применимы для сложных аналитических сценариев.
- Обладает очень эффективным механизмом логирования, позволяющему получить ответ практически в любой ситуации, связанной с ошибками работы.
- Open source
Недостатки
- Слабое распространение и как следствие небольшое количество специалистов на рынке труда.
- Низкая скорость чтения файлов формата JSON.
- Не такой богатый набор подключений к источникам в сравнении с аналогам
Сценарии, пригодные для использования:
Когда необходимо иметь дело с любым типом СУБД, от ввода данных до загрузки данных, Pentaho работает очень быстро.
Он также имеет много Bulk load шагов. В целом Pentaho специализируется на работе с табличными данными.
Менее подходящие сценарии:
Когда у вас есть схемы типа «звезда» с таблицами мостов или схемами с снежинками, вам, очевидно, потребуется много дополнительной работы в Pentaho.
Кроме того, работа с файлами не самая сильная сторона данного продукта.
Oracle Data Integration
Преимущества
- Осуществляет конвертацию данных из различных источников в целевой формат с использованием разнообразных правил бизнес-логики. Интегрируется с различными СУБД, также с Hadoop, облачными сервисами, плоскими файлами, веб-сервисами и т.д.
- В сочетании с Goldengate может быть использован для решения задачи консолидации данных в живом окружении как средство разработки решения по конвертации данных в целевой формат.
- ODI может работать на любой операционной системе.
- Высокая скорость интеграции вновь появляющихся типов данных
- Гибкость, простота кастомизации, множество доступных расширений. Нет необходимости разворачивать дополнительный сервер для решения задач по преобразованию данных, т.к. использует ресурсы целевого и исходного серверов для решения задач ETL.
- Наличие Big data коннекторов «из коробки» в версии 11.1.1.7
Недостатки
- Все еще сложный в освоении продукт, требующий большого объема тестирования перед установкой решения в «продуктив».
- Первичная настройка ресурсоемкий процесс с точки зрения машинных и человеко-часов, не всегда подходит для небольших проектов.
- Окружение для многопользовательской разработки оставляет желать лучшего.
- ODI studio крайне требовательно к объему оперативной памяти.
- Отсутствует возможность организовать «Continuous integration», что негативно сказывается на жизненном цикле процесса разработки.
- Управление безопасностью реализовано крайне слабо и требует улучшения.
Apache NiFi
Преимущества
- Чистая и продуманная реализация концепции программирования потока данных
- Он не зависит от источника данных и поддерживает источники разных форматов, схем, протоколов, скоростей и размеров.
- Логирование абсолютно всех производимых с данными операций.
Недостатки
- Очень минималистичный интерфейс.
- Нет функции мониторинга / отладки в режиме реального времени со статистикой по каждой записи.
- Малое число CDC процессоров с открытым исходным кодом для некоторых баз данных.
Применение Apache NiFi оправдано для целей построение хранилища данных сопряженного с потоковой обработкой входящих данных.