如何用Informatica Developer 10.5.2.1批量读取ADLS Gen2多分区Parquet文件
解决方案:Informatica Developer读取ADLS Gen2多分区Parquet文件
方法1:改造现有数据对象支持分区读取
- 打开之前创建的ADLS Gen2 Parquet数据对象进入编辑页
- 在「源属性」里找到分区配置,勾选「启用分区读取」
- 如果是Hive风格的分区(比如
date=20240520/region=CN这种结构),直接选「Hive分区格式」,Informatica会自动识别分区列 - 保存后再用这个数据对象做映射,就能自动遍历所有分区子文件夹里的Parquet文件
方法2:直接创建文件夹级数据对象
- 新建ADLS Gen2数据对象时,选文件夹作为源,别选单个文件
- 配置里把文件类型设为
Parquet,同时勾选「读取文件夹下所有文件(含子文件夹)」 - 要是需要过滤特定分区,直接在「源过滤器」里加条件,比如
date >= '20240501',用自动识别的分区列就行 - 保证数据对象的列结构和Parquet文件的Schema一致,要是有Schema差异,开「Schema自动检测」功能
方法3:调整参数化逻辑适配文件夹读取
- 保留原来的参数化,但把参数从单个文件路径改成根文件夹路径
- 在映射的源转换里,把「文件读取模式」设为「递归读取子文件夹」
- 可选:加文件名过滤,比如用
*.parquet匹配,避免读临时文件或非Parquet文件 - 运行映射时传入目标根文件夹路径,就能一次性读所有分区文件
关键注意点
- 确认Informatica的ADLS Gen2连接器版本在2.4及以上,低版本可能不支持分区Parquet读取
- 要是Parquet文件Schema不一致,得在数据对象里设置「Schema合并」策略,不然会读取失败
- 权限要到位:Informatica用的服务主体得对ADLS Gen2的目标文件夹和所有分区子文件夹有读取权限
内容的提问来源于stack exchange,提问作者Özge Özbay
相关产品推荐
相关产品推荐

