如何在AWS Glue中添加新分区时不递增表版本
AWS Glue 表版本递增问题解决方案
核心结论
AWS Glue 原生不支持新增分区时关闭表版本号递增逻辑,也不支持为单个分区设置固定表版本号。
Glue 的表版本是全局表元数据的完整快照,任何对表元数据的修改(包括增删改分区、调整表结构、修改表属性等操作)都会自动触发版本号递增,该逻辑为Glue内置的底层设计,没有可配置的开关。
永久解决方案(无需自行维护版本删除脚本)
- 优先使用批量分区操作替代单次分区操作
单次调用CreatePartitionAPI新增1个分区会生成1个新版本,改用BatchCreatePartitionAPI批量提交所有待新增的分区,一次批量操作仅会生成1个新版本,可大幅降低版本生成的频率。 - 配置Glue表版本自动保留规则
Glue 官方托管了表版本生命周期功能,无需自行编写删除脚本,直接配置版本保留上限即可:- 在Glue控制台编辑表时直接设置「版本保留」参数
- 调用
UpdateTableAPI时在TableInput参数中传入VersionRetentionConfiguration配置保留版本数
超出保留数量的旧版本会被Glue自动清理,永远不会触及10万的版本上限。
- 调整Glue Crawler配置(若分区由爬虫生成)
开启爬虫「仅更新新增分区元数据,不修改已有表元数据」的相关选项,同时调整爬虫的批量提交阈值,减少爬虫触发的版本更新次数。
内容的提问来源于stack exchange,提问作者Marcos Mussio
相关产品推荐
相关产品推荐

