问题标签 [aws-glue-data-catalog]
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.
python - AWS Glue 爬虫:输入数据的不同架构
我在 S3 存储桶中有一个子文件夹来存储 CSV 文件。这些 CSV 文件都包含来自一个特定数据源的数据。数据源每月提供一个新的 CSV 文件。我有大约 4 年的数据。
在某个时候(约 2 年前),数据源决定更改数据格式。CSV 的架构已更改(删除了一些列)。数据或多或少还是一样的,我想要的一切都还在。
我想使用爬虫来注册两个模式,最好在同一个表中。理想情况下,我希望它能够识别模式的两个版本。
我该怎么做?
我试过的
- 我上传了子文件夹中的所有文件并运行了一个启用了“为每个 S3 路径创建一个模式”的爬虫。
结果:我得到一张表,两种模式合并:一个大模式,包含两种格式的所有列
- 我上传了子文件夹中的所有文件,并在禁用“为每个 S3 路径创建单个模式”的情况下运行爬虫。
结果:我得到了两个具有两种不同模式的表
为什么我需要这个
这两种不同的模式需要以不同的方式处理。我正在编写一个 Python shell 作业来处理这些文件。我的想法是使用目录来拉取两个不同版本的架构,并根据文件的架构为每个文件触发不同的处理。
aws-glue - AWS Glue 可以使用 Web 服务作为数据源吗
AWS 提供 S3、JDBC 和 DynamoDB 作为数据评分。我可以将 REST 端点添加为数据源吗?如何构建从 REST 端点获取数据的粘合工作流?
amazon-s3 - AWS Glue:使用作业书签进行增量加载时无法推断架构
我正在开发一个 AWS Glue 作业,它使用 S3(镶木地板文件)中的分区数据和作业书签。我在尝试使用作业书签功能进行每日增量加载时遇到了问题。这是我读取数据的方式:
这是 AWS Glue 生成的 Input-files.json,它是在初始完全加载后使用作业书签逻辑后创建的。不应处理任何新数据,这似乎与空的“文件”部分正确显示。
但是,不是记录文件被跳过,而是发生以下情况:
我想现在 Glue 尝试创建一个空的 DynamicFrame,然后失败并显示以下消息:
您之前是否在使用 AWS Glue 时遇到过类似的行为?我正在考虑为“要创建的”动态框架实施“空检查”,以阻止工作失败。或者您是否有任何 AWS 原生解决方案可以确保作业书签的正常功能?
amazon-web-services - OpenX JSON SerDe 属性路径 (AWS Athena Glue)
我在 AWS Glue 数据目录中手动创建表。是否需要 SerDe 属性“路径”?我注意到爬虫添加了这个属性,它显示在 AWS 文档中。它有什么作用?
它似乎是一个列名列表,但我可以从 Athena 查询我的数据而不提供它。我应该添加它吗?
pyspark-dataframes - 在pyspark中将字符串转换为日期
我正在尝试将 20-NOV-2019 转换为 pyspark 中的日期。我一直在尝试各种方法,但没有运气。我尝试的一些方法如下
除了上述两个之外,我还尝试了其他stackoverflow问题的各种方法,但没有任何运气。任何有关如何解决此问题的建议都会有所帮助。
amazon-web-services - 如何避免在 aws 胶水中使用爬虫
AWS 胶水爬虫有与之相关的成本,如何避免我们在 aws 胶水中的爬虫。
有什么方法可以避免使用爬虫并从任何其他选项中推断模式,从而降低成本。
amazon-web-services - AWS Glue Crawler - 读取具有单列的文件
我想知道是否有人成功创建了使用带有“单列”文件的 AWS Glue Crawler。该文件必须按位置拆分,并且没有分隔符。
我们试图创建一个自定义分类器,但没有成功。
谢谢!
amazon-web-services - AWS Glue 动态框架创建错误 - InvalidInputException
我正在尝试使用以下命令从 S3 对象创建 Glue DynamicFrame。
这给出了一个InvalidInputException
有理由的存在Cannot vend credentials for buckets in multiple regions
这在之前的类似设置中有效,但在我尝试的新帐户中失败了。关于这里可能有什么问题的任何线索?
完全错误