使用Glue from_catalog读取数据时,如何排除指定非Parquet文件?
解决AWS Glue读取Parquet时排除指定文件的问题
你的代码没生效是因为exclusions的语法和格式有问题,按下面的方式修改即可:
正确的代码写法
直接在additional_options里传入格式正确的排除规则:
glueContext.create_data_frame.from_catalog( database = "db", table_name = "ta", additional_options={"exclusions": '["**/last_ingest_partition"]'} )
为什么之前的代码不生效?
- 原代码里的
exclusions值引号没闭合(末尾少了"]),语法错误导致规则不生效 - 通配符缺少
/,Glue的路径匹配需要**/来匹配任意层级下的目标文件,确保精准定位到last_ingest_partition
另一种持久化的解决方式
如果不想每次读取都加参数,可以直接在Glue表的定义里配置排除规则:
- 登录AWS Glue控制台,找到数据库
db下的表ta - 进入表编辑页面,在参数部分添加键为
excludePattern、值为**/last_ingest_partition的配置 - 保存后,用你最初的代码读取数据时会自动排除该文件
内容的提问来源于stack exchange,提问作者F. Knorr
相关产品推荐
相关产品推荐

