每次使用 CLI 工具对 Athena 运行查询时aws
,查询结果位置都会创建 2 个文件。随着时间的推移,除非清理这些文件,否则此位置将包含大量文件。
有没有办法自动清理它们?如果没有,最好的方法是什么?delete-named-query
CLI 命令仅在查询被命名时才有效,因此看起来您无法在完成查询后使用它来清理结果。
AWS 文档的相关部分如下:https://docs.aws.amazon.com/athena/latest/ug/querying.html
答案1
我们用S3 生命周期策略用于 Athena 临时文件清理。
我们的AthenaStagingDir
是s3://.../tmp/
,我们有一个生命周期规则对于该/tmp/
前缀:
- 到期当前对象一天后
- 删除先前的对象另一天之后(即前一天过期的)
我还没有找到在 1 天后立即删除对象的方法,但说实话我并没有太努力。这种 2 步/2 天方法效果很好。
希望有帮助:)