Apache Nifi
GetFile
GetFile处理器单元从本地磁盘获取文件的内容到NiFi,并删除原有的磁盘文件。这个处理器应用场景是将一个文件从一个地方搬移到另外一个地方而不是对文件的拷贝。
上面的图中表示Processor将/user/sample.txt文件的内容输出到FlowFile的内容中。
GetFTP
GetFTP处理器单元从FTP服务器文件内容输出到FlowFile中,并可以选择删除原有文件。同样它的使用场景是文件的搬移而不是文件的拷贝。
上面的图中表示Processor将ftpServer01上/resource路径下的文件内容输出到FlowFile中,并将源文件删除。
GetSFTP
GetSFTP处理器单元从SFTP文件内容输出到FlowFile中,并可以选择删除原有文件。同样它的使用场景是文件的搬移而不是文件的拷贝。
上面的图中表示Processor将sftpServer01上/resource路径下的文件内容输出到FlowFile中,并将源文件删除。
GetJMSQueue
GetJMSQueue处理器单元从JMS队列中下载消息,并通过JMS Message来创建FlowFile的内容,同时也可以指定创建FlowFile的属性。
GetJMSTopic
GetJMSTopic处理器单元从JMS的Topic中下载消息,并根据JMS消息创建FlowFile的内容,通过选择也能生成FlowFile的属性。这个处理器单元支持长期和非长期的订阅模式。
GetHTTP
GetHTTP处理器单元能够根据URL通过HTTP或者HTTPS协议下载内容到NiFi,从而形成的新的FlowFile内容。同时处理器单元在下载的同时也记忆ETag和最新修改时间来防止数据的重复下载问题。
上面的图中表示Processor根据配置的URL进行http访问,将访问结果发送到FlowFile的内容中并且filename属性值为配置的Filename的值。
ListenHTTP
ListenHTTP处理器单元启动一个HTTP或者HTTPS监听端口,当监听到有POST请求过来的时候,会首先返回200状态,并利用POST的请求内容形成新的FlowFile。
上面的图中表示Processor监听8811端口的HTTP POST请求,当有POST请求访问http://localhost:8811/contentListener的时候,Processor就会首先返回200状态,让后将POST请求的参数输出到新的FlowFile的内容中。
ListenUDP
ListenUDP处理器单元监听UDP数据包,并根据配置获取一定量的包来创建一个FlowFile并将FlowFile发射到success的Relationships关系中。
GetHDFS
GetHDFS处理器单元监控用户定义的HDFS指定路径的文件变化,当有新的文件写入HDFS中的该路径下,那么文件的内容被用来创建新的FlowFile的内容,同时删除原有的文件。这个处理器同前面一样适用于文件的搬移场景而非文件的复制场景。
上面的图中表示Processor将HDFS上/target路径下的文件内容输出到FlowFile中,并将源文件删除。