Hadoop 如何在ApacheNIFI中处理同名文件?

Hadoop 如何在ApacheNIFI中处理同名文件?,hadoop,hdfs,apache-nifi,Hadoop,Hdfs,Apache Nifi,我正在学习NiFi,我正在使用GetFile获取文件,然后进行一些处理,然后使用PutHDFS处理器将它们存储到HDFS中。问题是,我很可能会得到同名的文件。例如,我可能每30分钟获取一个文件,并且每30分钟生成的文件将具有相同的名称 现在,当我将该文件放入HDFS时,会得到一个“已经存在同名文件”。我如何克服这个问题?有没有办法在运行时更改文件名?这是一个非常简单的方法。我只需要使用UpdateAttribute处理器来更改文件名。例如:您可以将时间戳附加到文件名 在UpdateProcess

我正在学习NiFi,我正在使用
GetFile
获取文件,然后进行一些处理,然后使用
PutHDFS
处理器将它们存储到HDFS中。问题是,我很可能会得到同名的文件。例如,我可能每30分钟获取一个文件,并且每30分钟生成的文件将具有相同的名称


现在,当我将该文件放入HDFS时,会得到一个“已经存在同名文件”。我如何克服这个问题?有没有办法在运行时更改文件名?

这是一个非常简单的方法。我只需要使用
UpdateAttribute
处理器来更改文件名。例如:您可以将
时间戳
附加到文件名


UpdateProcessor
中,添加一个属性
filename
及其值
${filename}.${now()}

仅在时间戳也可能发生冲突的高比率情况下,当我设置此值时,表达式语言也有一个UUID函数,我得到一个错误无法计算属性“filename”的新值。请将上述值从${filename}.${now}更正为${filename}.${now()}