NiFi 集群搭建好后,就可以通过配置的 IP 和端口来访问集群的 Web 页面。通过操作栏按钮可以添加Processor Group 和 Processor。通常每个 Processor Group 包含一个或多个 Job,而每个 Job 包含多个Processor。Operate可以控制某个Processor Group的状态转换。
下面我们通过一个从 KafKa 写入 Redis 的实际需求,来分析 NiFi 的使用方法。
(1)构建一个 Processor Group
如下图所示,可以通过拖拽导航栏中的按钮来进行 Processor Group 的添加。添加过程中,可以键入 Processor Group 的名字,并按 ADD 键来进行 Processor Group 的创建。
(2)添加相应的 Processor 并配置信息
创建完 Processor Group 后,可以通过拖拽导航栏中的 Processor 按钮,在该 Processor Group 下添加自己需要的 Processor,点击后我们可以看到很多已经内置的 Processor。当然还有你自己定制开发的 Processor。通过搜索栏来检索相应的 Processor,选中想要的 Processor 后,可以看到该 Processor 的解释信息。
因为实例中是从 Kafka 消费数据到 Redis,所以选择 GetKafka 作为消费数据的 Processor,通过该 Processor 的 Properties 栏对 Kafka 的集群地址、Topic 等基础信息进行配置,当然也可以通过 Setting 栏来配置 Processor 的调度方法。同理,通过该方法添加写入 Redis 的 Processor(PutRedis),并配置 PutRedis 相应的的基础信息即可完成 Processor 的添加。
目前 NiFi 支持的常用 Processor 算子有:
GetKafka/PutKafka:消费 Kafka 的数据/生产数据 GetHDFS/PutHDFS:从 HDFS 中读取数据/写入 HDFS
PutElasticsearch:将数据写入 ES
UpdateCounter:数据流条数计数器
GetRocketMQ/PutRocketMQ(自研):消费 RocketMQ 的数据/生产数据
PutSQL:将数据导入 MySQL
ExecuteSQL:执行 MySQL 语句
(3)启动 Job
所有 Processor 配置完毕后,可以右键相应的 Processor 并点击 Start 键来进行启动。