在NiFi中使用ListS3处理器读取嵌套S3文件夹的前缀配置问询
解决S3跨桶转存指定层级文件的前缀配置问题
你需要配置的前缀是:
customer-sales/year=2022/month=06/day=01/hour=原因说明:
- S3的List操作只支持精确前缀匹配,不识别正则表达式,所以你之前用的
customer-sales/year=2022/month=06/day=01/.*/完全无效,S3不会解析这类正则符号。 - 之前尝试的
customer-sales/year=2022/month=06/day=01/虽然覆盖了目标路径,但如果List S3处理器默认仅列出当前前缀下的直接对象(不递归),只会获取day=01层级下的文件,无法深入到hour=xx子层级。而用hour=结尾的前缀,能直接命中所有hour子层级下的对象键。
- S3的List操作只支持精确前缀匹配,不识别正则表达式,所以你之前用的
关键配置补充:务必开启List S3处理器的递归列出对象选项(不同工具里可能叫“递归遍历”“包含子目录”)。S3本质是扁平化存储,没有真实的目录结构,只有对象键的前缀,开启递归才能遍历所有匹配前缀的嵌套对象。
内容的提问来源于stack exchange,提问作者Mohammad Shoaib
相关产品推荐
相关产品推荐

