对nifi的初步了解
应领导要求需要使用这个nifi工具
界面介绍
认识处理器
- 常用处理器
- ExecuteScript : 执行脚本处理器, 支持: clojure, ecmascript, groovy, lua, python, ruby ##可以用来执行脚本
- QueryDatabaseTable : 数据库查询处理器, 支持: mysql
- ConvertAvroToJSON : avro 数据格式转换为 json ##avro—>json
- SplitJson : 将JSON文件拆分为多个单独的FlowFiles, 用于由JsonPath表达式指定的数组元素。
- EvaluateJsonPath : 根据FlowFile的内容评估一个或多个JsonPath表达式。这些表达式的结果将分配给FlowFile属性,或者写入FlowFile本身的内容,具体取决于处理器的配置。
- ReplaceText : 文本组装与替换, 支持正则表达式
- PutHDFS : 将FlowFile数据写入Hadoop分布式文件系统(HDFS)
- PutHiveQL : 执行hive ddl/dml命令, 如: insert, update
- PublishKafka_2_0 : 根据配置将消息发送到kafka topic
- SelectHiveQL : 执行hive select 语句并获取结果
- PutSQL : 执行SQL的insert或update命令
- GetFile : 从目录中的文件创建FlowFiles。
- PutFile : 将FlowFile数据写入文件
- GetHDFS : 从Hadoop分布式文件系统获取文件
- CaptureChangeMySQL : 从MySQL数据库中检索更改数据捕获(CDC)事件。CDC事件包括INSERT,UPDATE,DELETE操作。事件作为单个流文件输出,这些文件按操作发生的时间排序。
- ExecuteStreamCommand : 一般用于执行sh脚本
配置处理器
添加一个处理器
配置处理器配置项说明
- 相关配置说明
- Configure(配置):此选项允许用户建立或更改处理器的配置。
- Start(启动或停止):此选项允许用户启动或停止处理器; 该选项可以是Start或Stop,具体取决于处理器的当前状态。
- Disable(启用或禁用):此选项允许用户启用或启用处理器; 该选项将为“启用”或“禁用”,具体取决于处理器的当前状态。
- View data provenance(查看数据来源):此选项显示NiFi数据来源表,其中包含有关通过该处理器路由FlowFiles的数据来源事件的信息。
- View status history(查看状态历史记录):此选项打开处理器统计信息随时间的图形表示。
- View usage(查看用法):此选项将用户带到处理器的使用文档。
- View connection → Upstream(查看连接→上游):此选项允许用户查看和“跳转”入处理器的上游连接。当处理器连接进出其他进程组时,这尤其有用。
- View connection → Downstream(查看连接→下游):此选项允许用户查看和“跳转”到处理器外的下游连接。当处理器连接进出其他进程组时,这尤其有用。
- Centere in view(视图中心):此选项将画布的视图置于给定的处理器上。 ##将处理器放置于工作区域正中心
- Change color(更改颜色):此选项允许用户更改处理器的颜色,这可以使大流量的可视化管理更容易。
- Group (添加到组):把当前处理器添加到组
- Create template(创建模板):此选项允许用户从所选处理器创建模板。
- Copy(复制):此选项将所选处理器的副本放在剪贴板上,以便可以通过右键单击工作区并选择“粘贴”将其粘贴到工作区上的其他位置。复制粘贴操作也可以使用按键Ctrl-C和Ctrl-V完成。
- Delete(删除):此选项允许从画布中删除处理器。
配置处理器
这里以上面的getfile处理器为例
1.配置处理器
【右键】-----【Configure】
- 配置分为4个部分: SETTING, SCHEDULING, PROPERTIES, COMMENTS
相关界面介绍
- SETTING(设置)
- SCHEDULING(任务调度)
-
PROPERTIES(属性),不同的处理器属性不同
-
COMMENTS(注释),添加注释的作用
其他组件介绍
- 数据流入点(input-port)
虽然说这个事数据输入点,但是并不是整体数据流的起点,它是作为组与组之间的数据流连接的传入点与输出点 - 数据流出点(output-port)
同理上面的输入点,它是作为组与组之间的数据流连接的传入点与输出点 - 组(process-group)
相当于系统的文件夹,作用就是使数据流的各个部分看起来更工整,思路更加的清晰,不至于从头到尾一条线阅读 - 远程组(remote process-group)
添加远程控制的组 - 聚合(funnel)
用于将来多个Connections的数据合并到一个Connection中 - 模板(template)
可以将若干个组件组合到一起形成更大的组,从该组创建的数据流模板,这些模板也可以导出为xml并导入到另一个nifi的实列中,从而可以共享这些组。 - 便签(label)
可放置在画布空白处,写上备注信息 - 导航(Navigate)
Navigate是对工作区进行预览。点击放大和缩小可调整视野,蓝框区域就是工作区当前的界面,可用鼠标在这部分进行移动从而调整工作区的视野 - 操作区(operate)
操作区相关按钮功能介绍
-
配置(Configuration)
可以根据当前工作区选中的组件,进行属性的配置,可配置所有的组件或组 -
启用(enable)
启用组件,不能操作组 -
禁用(disable)
禁用组件不能操作组 -
开始(Start)
启动选择的组件或组,不选择将启动所有 -
停止(Stop)
停止选择的组件或组。不选择停止所有 -
创建模板(create template)
根据选择的组件或组创建模板 -
上传模板(upload template)
上传已经保存的模板