如何 运行 在 AWS Glue 中查询

How to run query in AWS Glue

我在 AWS Redshift 中拥有我需要的数据。它在一个名为 Lz (Landingzone) 的数据库中。 该数据插入到名为 Stage(相同的红移)的数据库中。 我有 (select) 查询将数据从其原始状态 (LZ) 转换为我需要的维度和事实。 传统上,我会结合使用这些查询和插入来转换数据。结果将合并到数据仓库中(再次:相同的红移)

如何在 Glue 中执行此操作?我可以使用 python 在作业中执行查询吗?或者我可以在执行 by/from 个作业的 redshift 中创建存储过程吗?

我不认为你可以 运行 红移 sql 以直接和预定的方式从胶水(不幸的是)。在我看来,这是产品的一个重大遗漏。

可以选择使用 pre/post 语句,如本文所述。这是非常基本的,可能无法满足您的需求。

https://aws.amazon.com/premiumsupport/knowledge-center/sql-commands-redshift-glue-job/

您可以使用 "proper" 调度产品(如 airflow)或 crontab 和 bash 脚本来执行以下操作 1)监控胶水作业(依赖作业)的状态 2) 运行 sql 红移

您也可以使用 cloudwatch(观察粘合完成)和 lambda(运行 红移 sql),但是我不推荐这种方法,因为 运行 lambda 作业的时间限制(可能比您完成红移 sql 所需的时间短)