Как автоматизировать развертывание и запуск заданий ETL? - PullRequest
0 голосов
/ 27 июня 2018

У нас есть задания ETL, то есть java jar (выполняет операции etl) запускается через скрипт оболочки. Скрипт оболочки передается с некоторыми параметрами в соответствии с выполняемой задачей. Эти сценарии оболочки запускаются через crontab, а также вручную, в зависимости от требований. Иногда перед запуском сценария оболочки необходимо запустить некоторые команды / сценарии sql в RDS DB posgresql.

У нас есть все на AWS, то есть на сервере календаря Ec2, Postgresql RDS, Redshift, ansible и т. Д. Как мы можем автоматизировать этот процесс? Как развернуть и обработать передачу пользовательских параметров и т. Д. Указатели приветствуются.

Ответы [ 2 ]

0 голосов
/ 28 июня 2018

Я бы предпочел пойти с конвейером данных AWS и добавить шаги для выполнения любых операций до и после выполнения задания ETL, таких как запуск сценариев оболочки, любой hql и т. Д.

AWS Glue работает на движке Spark и обладает другими функциями, такими как конечная точка разработки клея AWS, Crawler, Catalog, планировщики заданий. Я думаю, что AWS Glue был бы идеальным вариантом, если вы начинаете с нуля или планируете перенести ETL на AWS Glue. Пожалуйста, см. Здесь для сравнения цен .

Трубопровод AWS: Подробнее о трубопроводе AWS

FAQ по AWS Glue: Подробная информация о поддерживаемых языках для AWS Glue

Обратите внимание, в соответствии с AWS Glue FAQ:

В: Какой язык программирования я могу использовать для написания своего кода ETL для AWS? Клей

Вы можете использовать Scala или Python.

Редактировать: Как прокомментировал Джон Скотт, Apache Airflow - еще одна опция для планирования заданий, но я ее не использовал.

0 голосов
/ 27 июня 2018

Вы можете использовать Aws Glue для выполнения ETL без сервера. Клей также имеет триггеры, которые позволяют автоматизировать их работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...