如何 运行 在 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 所需的时间短)
我在 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 所需的时间短)