Automation 如何自动化ETL作业部署和运行?

Automation 如何自动化ETL作业部署和运行?,automation,amazon-redshift,etl,data-warehouse,aws-glue,Automation,Amazon Redshift,Etl,Data Warehouse,Aws Glue,我们有ETL作业,即通过shell脚本运行JavaJAR(执行ETL操作)。shell脚本根据正在运行的作业传递一些参数。这些shell脚本通过crontab运行,也可以根据需要手动运行。有时,在shell脚本运行之前,还需要在posgresql RDS DB上运行一些sql命令/脚本 我们在AWS上拥有一切,如Ec2 talend服务器、Postgresql RDS、红移、ansible等。 我们如何使这一过程自动化?如何部署和处理传递的自定义参数等。欢迎使用指针。您可以用于执行无服务器ETL

我们有ETL作业,即通过shell脚本运行JavaJAR(执行ETL操作)。shell脚本根据正在运行的作业传递一些参数。这些shell脚本通过crontab运行,也可以根据需要手动运行。有时,在shell脚本运行之前,还需要在posgresql RDS DB上运行一些sql命令/脚本

我们在AWS上拥有一切,如Ec2 talend服务器、Postgresql RDS、红移、ansible等。
我们如何使这一过程自动化?如何部署和处理传递的自定义参数等。欢迎使用指针。

您可以用于执行无服务器ETL。Glue还有一些触发器,可以让您自动执行它们的工作。

我更喜欢使用AWS数据管道,并添加一些步骤来对ETL工作执行任何预/后操作,如运行shell脚本或任何hql等

AWS Glue在Spark engine上运行,它还具有其他功能,如AWS Glue开发端点、爬虫程序、目录、作业调度程序。我认为AWS胶水将是理想的,如果你是重新开始,或计划将您的ETL到AWS胶水。求你了

AWS管道:

AWS胶水常见问题解答:

请根据AWS胶水常见问题解答注意:

问:我可以使用什么编程语言为AWS编写ETL代码 胶水

您可以使用Scala或Python


编辑:正如Jon scott评论的那样,这是作业调度的另一个选项,但我没有使用它。

我总是使用气流进行复杂的调度,或者只是使用一个简单的ec2服务器,在简单的情况下使用cron作业设置。这与调度无关。我们有3-4个ETL开发人员,运营团队每天必须安排5-8个工作。我正在找一个平台来减轻重物的重量。你用过吗?jar文件中的功能如何在Glue中使用。我看到了这一点,但不清楚如何使用Glue的当前功能。Glue可以实现文档中提到的ETL功能。您必须使用Python或Scala编写ETL代码,并且当前只支持本机Python,不支持pandas和numpy库。它在AWS的待办事项列表中,但目前还没有ETA。它还取决于现有ETL作业中使用的语言,如果本机python或scala是,否则它将无法工作。如果它是简单的转换并移动到目标,Glue可以帮助您生成代码,也可以自定义代码。正如我所说,这取决于您现有代码的复杂性和性质,以及您在允许的情况下修改代码的时间线。不幸的是,数据管道在法兰克福地区还不可用。现在我必须寻找气流。