问题标签 [aws-glue-workflow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
110 浏览

python - 将数据从 S3 传输到 Aurora 时,AWS 粘合作业中的数据截断错误

我正在尝试使用 AWS Glue 将我的数据从 S3 存储桶 (address.csv) 传输到 AWS Aurora (MySQL)。当我使用以下脚本进行传输时,名为“po_box_number”的列之一是一个长度为 10 的 varchar,它给我一个错误,提示“调用 o195.pyWriteDynamicFrame 时发生错误。数据截断:列 'po_box_number' 的数据太长”在第 1 行"。当我出于诊断目的增加列的大小时,我看到数据以 json 格式存储。假设我需要的值是“100”,它存储为{“long”:100,“string”:null},同样如果我尝试存储“E101”,它存储为{“long”:null, “字符串”:“E101”}

0 投票
2 回答
179 浏览

python - AWS Glue python shell - 使用多个库

我正在使用 AWS 胶水 python shell。该程序使用多个 Python 库,这些库本身不适用于 AWS。Glue 可以将 .egg 或 .whl 文件用于外部库参考。我们需要做的就是将这些 .egg 或 .whl 文件放在某个 S3 位置,并使用它的完整路径指向它。我尝试使用一个外部库 [例如 openpyxl] 并且它有效。现在的问题是,由于我有多个外部库,如 pandas、numpy、openpyxl 和 pytz 可供参考,我无法提供所有这些包的完整路径,因为只有路径可以指定为外部 python 库引用。我尝试给出放置所有这些包的 s3 文件夹名称,但它不起作用。

如何指定这些多重 .egg 或 .whl 文件,以便我的胶水作业可以使用它们。

0 投票
1 回答
145 浏览

amazon-web-services - 有没有办法修改并入 AWS Glue 工作流的 AWS Glue 触发器的计划?

我创建了一个 AWS Glue 触发器,作为定期运行的 AWS Glue 工作流的一部分。我已经通过触发器成功设置了定期计划,没有问题,但现在我需要调整计划。有没有办法让我直接编辑触发器的计划而不重新创建整个 AWS Glue 工作流?

我尝试直接从 AWS Glue 触发器控制台修改它:

在此处输入图像描述

在此处输入图像描述

但是我无法完成它,因为控制台要求我选择将由触发器执行的胶水作业,这不适用于我的情况,因为触发器应该启动爬虫而不是胶水作业。

在此处输入图像描述

0 投票
1 回答
88 浏览

amazon-web-services - 如何将 aws 胶水脚本编写的输出文件重命名为 s3 位置?使用 pyspark

我正在寻找使用 pyspark 中的 aws 胶水重命名写入 s3 的输出文件。

如果在胶水作业运行后有一个代码可以引用 s3 中的重命名文件,那将非常有帮助

0 投票
1 回答
74 浏览

amazon-web-services - 如何在 aws 胶水中设置特定的压缩值?如果可能,可以在 aws 胶水中手动确定压缩级别和分区吗?

我希望使用胶水将数据从源摄取到 s3。是否可以将胶水中摄取的数据压缩到指定值?例如:将数据压缩到 500 MB 并且还可以根据提供的压缩值对数据进行分区?如果是,如何启用此功能?我正在用 Python 编写胶水脚本。

0 投票
1 回答
39 浏览

amazon-web-services - 如何使用胶水动态指定 s3 路径?

我正在使用胶水将一些文件从关系数据库源写入 s3。我希望 s3 路径采用这种格式 bucket_name/database/schema/table/year/month/day 格式。我正在从配置文件中读取 bucket_name、数据库、模式、表名。我想使用从配置文件中读取的那些参数来动态指定保存这些源文件的 s3 路径。我正在使用胶水动态框架将源文件写入 s3。

在胶水脚本中,我动态地提到了路径:s3_target_path = 's3://' + target_bucket_name + '/' + database + '/' + schema + '/' + table + '/' + year '/' + month '/' + 天

0 投票
1 回答
108 浏览

aws-glue - AWS Glue 空值作为字符串插入 RDS

我创建了一个 AWS 粘合作业,将数据从 CSV 文件加载到 Mysql RDS 数据库。数据已成功加载,但所有 NULL 值都作为字符串插入 MySQL 表中,而不是作为 NULL。

所以如果我像这样查询我的表select * from myTable where myCol is null有 0 结果

但是当我在select * from myTable where myCol where = 'NULL'这里做的时候,我得到了结果。

相关字段的数据类型是字符串。

知道如何解决这个问题吗?

0 投票
1 回答
133 浏览

amazon-web-services - AWS Glue Studio 到 AWS Athena 表

我在 AWS Athena 中有一个带有一堆表的数据库。我想使用 AWS Glue Studio 执行这些表的连接。我已订阅适用于 Amazon Athena 的 CData AWS Glue 连接器。当我尝试使用此连接器创建连接并连接到 AWS Athena 中的一个表时,我收到以下错误:

我已遵循此链接中提到的所有说明:https ://www.cdata.com/kb/tech/athena-glue-studio.rst 是否有人使用 AWS Glue Studio 连接到 Athena 表,如果是,您是否遇到过这个问题?任何有助于解决此问题的指针将不胜感激。

0 投票
0 回答
23 浏览

etl - 具有数据隔离功能的多个客户的 AWS Glue 作业/工作流

在 Aws Glue 架构方面需要帮助!

我有 10 个 Aws Glue ETL 作业(Type-Spark、Language-Python 3.0)。这些作业应该使用各自的源和目标数据库(参数化)为 100 多个客户运行。

  1. 这是否意味着我需要创建 10*100 个工作来容纳所有客户?如果这些客户成倍增长怎么办?
  2. 如果我需要在单个区域内隔离所有这些客户数据怎么办?(例如,我不能在 AWS 胶水上为每个客户创建专用的 EC2/RDS 类实例)

我正在尝试在胶水上创建类似 SaaS 的架构。请建议或将我重定向到有用的资源。

0 投票
0 回答
106 浏览

amazon-web-services - 如何监控 AWS Glue 工作流

我有一个由多个 AWS Glue 作业组成的 Glue 工作流,我希望在它失败时收到警报。目前,我对构成工作流的每个单独作业都有 CloudWatch 警报。我目前的解决方案的问题是,它需要创建许多警报,而不仅仅是一个警报,并且警报会在作业的单个失败时触发,即使作业在自动重试时成功也是如此。据我所知,没有像作业那样与工作流相关联的 Cloudwatch 指标,所以我不知道如何监控工作流故障。