Nifi:如何使用fileFileter从hadoop获取文件?
我想根据文件名从hadoop目录中获取文件,逻辑上看起来像${filename}.*(因为我有几个文件的名称类似,它们看起来像2011-01-01.1、2011-01-01.2等)。我尝试使用listhdfs+fetchhdfs,但它们与我的逻辑不匹配Nifi:如何使用fileFileter从hadoop获取文件?,hadoop,groovy,apache-nifi,Hadoop,Groovy,Apache Nifi,我想根据文件名从hadoop目录中获取文件,逻辑上看起来像${filename}.*(因为我有几个文件的名称类似,它们看起来像2011-01-01.1、2011-01-01.2等)。我尝试使用listhdfs+fetchhdfs,但它们与我的逻辑不匹配 你能告诉我在nifi环境下如何做吗 是否可以通过ExecuteScript处理器中的groovy代码来完成此任务 如何通过groovy代码连接hdfs目录 在获得这些文件后,我应该将它们放在一个流文件列表中,并且在流文件列表大小与计数属性(放在流
${filename:matches('\d{4}-\d{2}-\d{2}.\d')}
现在,它与HDFS中存在的文件匹配,并以匹配的路径出现
接下来在要匹配的RouteOnAttribute之后使用FetchFile
在这里,您可以使用模式为“\d{4}-\d{2}-\d{2}的获取文件。\d”
它将只获取您所需的文件。我如何找到具有\d{4}-\d{2}-\d{2}.\d此格式存在?对于我来说,检查类似的流文件编号是否等于count属性很重要