AWS Glue使用输出存储桶中的文件写入和压缩

时间:2019-12-10 10:46:20

标签: partitioning aws-glue

我有一个ETL作业,每天运行,使用书签,并将增量写入一些输出s3存储桶。输出存储桶由一键分区。

现在,我希望每个分区只有一个文件。我可以在第一次工作中实现以下目标:

datasource = datasource.repartition(1)

glueContext.write_dynamic_frame.from_options(
connection_type = "s3",
frame = datasource, 
connection_options = {"path":output_path, "partitionKeys": ["a_key"]}, 
format = "glueparquet",format_options={"compression":"gzip"},
transformation_ctx = "write_dynamic_frame")

我不知道如何使用输出存储区/分区中已经存在的文件来编写和压缩增量。 一种选择是从前一天开始读取表格,然后将其与增量合并,但这似乎有些矫kill过正。

有更聪明的主意吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,发现压缩设置位于connection_options中:

connection_options = {"path": file_path, "compression": "gzip", "partitionKeys": ["a_key"]}