问题标签 [aws-glue]
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.
amazon-web-services - 使用 AWS Glue 和 Data Pipeline 的 ETL 架构
我正在尝试决定是否将 AWS Glue 或 Amazon Data Pipeline 用于我们的 ETL。我需要将几个表增量复制到 Redshift。几乎所有表都需要复制而无需转换。一个表需要可以使用 Spark 完成的转换。
根据我对这两种服务的理解,最好的解决方案是结合使用两者。Data Pipeline 可以将所有内容复制到 S3。从那里,如果不需要转换,Data Pipeline 可以使用 Redshift COPY 将数据移动到 Redshift。在需要转换的地方,Glue 作业可以应用转换并将数据复制到 Redshift。
这是一个明智的策略还是我误解了这些服务的应用程序?
amazon-web-services - aws 胶水中 SerDeInfo 的完整参数列表是什么?
这是描述SerDeInfo
参数的链接。他们定义parameters
为地图,但他们期望什么键和值?有一些例子,例如:
但是完整的清单是什么?
scala - 如何在 aws gllue 中读取非 utf-8 编码的表?
这是一个用于读取 csv 文件(scala)的代码:
失败并出现不清楚的错误:
该代码适用于其他 scv 文件,但这个有ANSI
编码。有没有办法告诉胶水(或可能激发内部)以不同的编码读取文件?
amazon-web-services - 默认情况下,aws 胶水是否处理新数据?
看看这个例子。它从 s3 目录中读取数据,然后写回 s3 文件夹。但是,如果我添加数据并重新运行该作业会怎样?我是对的,aws 胶水再次读取和写入所有数据?或者它只检测(如何?)新数据并只写它?
顺便说一句,如果我从分区数据中读取,我必须自己指定“新到”分区?
amazon-web-services - 在 aws 胶水中使用 transformation_ctx 是什么?
API中有很多方法使用默认的 "" 值接收此值。
它只是字符串标记,但又是什么目的?
scala - GlueContext#getSinkWithFormat 中的 JsonOptions 有哪些可能的值
看看这个:
可能的值JsonOptions
是什么?
sql-server - AWS Glue:SQL Server 多个分区数据库 ETL 到 Redshift
我们的团队正在尝试在 Redshift 中创建一个 ETL,作为我们用于某些报告的数据仓库。我们正在使用 Microsoft SQL Server,并将我们的数据库划分为 40 多个数据源。我们正在寻找一种能够将来自所有这些相同数据源的数据通过管道传输到 1 个 Redshift DB 的方法。
查看 AWS Glue 似乎无法实现这一目标。由于他们打开了工作脚本供开发人员编辑,我想知道是否有其他人有过循环多个数据库并将同一个表传输到单个数据仓库的经验。我们试图阻止自己为每个数据库创建一个作业......除非我们可以以编程方式循环并为每个数据库创建多个作业。
我们还研究了 DMS,它有助于将架构和当前数据转移到 redshift,但它似乎也不适用于多分区数据源问题。
python - 我可以在本地测试 AWS Glue 代码吗?
阅读 Amazon 文档后,我的理解是运行/测试 Glue 脚本的唯一方法是将其部署到开发端点并在必要时进行远程调试。同时,如果(Python)代码由多个文件和包组成,除主脚本外的所有文件都需要压缩。这一切让我觉得 Glue 不适合任何复杂的 ETL 任务,因为开发和测试很麻烦。我可以在本地测试我的 Spark 代码,而不必每次都将代码上传到 S3,并在 CI 服务器上验证测试,而无需支付开发 Glue 端点的费用。
scala - 如何配置胶水书签以使用 scala 代码?
考虑scala代码:
输入是按日期列分区的具有 gzip 压缩的分区 json 文件。一切正常- 数据以 json 格式读取并用 orc 编写。
但是当尝试使用相同的数据运行作业时,它会再次读取它并写入重复的数据。此作业中启用了书签。方法Job.init
和Job.commit
被调用。怎么了?
更新
我在and中添加了一个transformationContext
参数:getCatalogSource
getSinkWithFormat
和:
现在魔术以这种方式“起作用”:
- 第一次运行 - 好的
- 第二次运行(使用相同的数据或相同的数据和新的数据) - 它失败并出现错误(稍后)
在第二次(和后续)运行之后再次发生错误。该消息也Skipping Partition {"my_date": "2017-10-10"}
出现在日志中。
胶水书签到底是怎么回事???哦
amazon-web-services - 如何为爬取的表设置名称?
AWS 爬虫具有用于添加新表的前缀属性。因此,如果我将前缀留空并启动爬虫,s3://my-bucket/some-table-backup
它会创建带有 name 的表some-table-backup
。有没有办法将其重命名为my-awesome-table
并保持爬虫更新重命名的表?或者设置爬虫以使用提供的名称创建新表?