【以下的问题经过翻译处理】 在 Glue 控制台(Glue 3.0 - python 和 spark),我需要在自动化流程中覆盖 S3 存储桶的数据。我尝试在脚本中使用glueContext.purge_s3_path( "s3://bucket-to-clean-path/", { "retentionPeriod": 1, "manifestFilePath": "s3://bucket-for-manifest-path/" } )
函数,但该脚本似乎不会在写新的数据之前清理S3存储桶的旧有数据。
我的Glue作业通过创建过程来转换某些数据,并将其写到S3存储桶中,然后将清单文件manifest发送到 QS。这个作业过程会每天执行。目前,所有脚本都按预期工作,只是存储桶中仍然保留了之前运行生成的数据,没有被覆盖删除。
有人知道这是什么原因吗?
编辑:我尝试将保留期更改为一小时,但数据成功生成几小时后,旧有文件仍然没有被删除。如果我删除与清空S3桶无关的脚本,改任务只需要1分钟。
在清单manifest文件中出现了一个成功删除的分区Partition和删除失败的分区Partition,但这些都不是按照设定应该删除的文件。
分区示例:run-1639727067782-part-r-00000