目前,我在 S3 中有数千个无标头、管道分隔的 GZIP 压缩文件,总计约 10TB,具有相同的架构。在 AWS Glue 中,(1) 添加头文件,(2) 使用文件中的“日期”字段转换为按周分区的镶木地板格式,(3) 将文件添加到 Glue 的最佳方法是什么用于在 AWS Athena 中进行查询的可访问性数据目录?
问问题
741 次
1 回答
1
1)创建一个指向 S3 上的数据的 athena 表:
2) 使用您在上述步骤中创建的表格,从胶水目录创建一个动态框架。
from awsglue.context import GlueContext
glueContext = GlueContext(SparkContext.getOrCreate())
DyF = glueContext.create_dynamic_frame.from_catalog(database="{{database}}", table_name="{{table_name}}")
3) 以您喜欢的任何格式将数据写回新的 S3 位置:
glueContext.write_dynamic_frame.from_options(
frame = DyF,
connection_type = "s3",
connection_options = {"path": "path to new s3 location"},
format = "parquet")
4)创建一个雅典娜表,指向 S3 上的镶木地板数据:
注意:您也可以使用胶水爬虫为您创建一个,而不是手动创建 athena 表。但是,这将产生一些费用。
于 2019-05-18T05:07:27.990 回答