我在数据目录中定义了一个架构。我还有其他自动化方法,可以使用动态路径和名称在不同的S3位置创建与该模式匹配的文件。
我想编写一个AWS Glue作业,该作业使用预定义的表来解释这些文件中的数据,但是我还没有找到在Glue中加载文件的方法。似乎只想从表中定义的位置读取。
根据Glue documentation,您可以将paths
键作为S3位置列表来传递以从中读取数据,但是使用glueContext.create_dynamic_frame.from_catalog
时似乎完全忽略了这一点:< / p>
df = glueContext.create_dynamic_frame.from_catalog(
database="data-catalog-db",
table_name="my_table_name",
transformation_ctx="datasource0",
additional_options={'paths': ['s3://foo/bar.csv']}
)
此代码生成的数据帧具有正确的架构(根据df.printSchema()
,但没有行,即使存在s3://foo/bar.csv
并且数据与my_table_name
中定义的架构相匹配