一、NiFi介绍
NiFi 最初由美国国家安全局(NSA)开发和使用的一个可视化、可定制的数据集成产品。2014 年 NSA 将其贡献给了 Apache 开源社区,2015 年 7 月成为 Apache 顶级项目
他是一个易于使用,功能强大,可靠的处理和分发数据框架。主要用于数据的同步传输,支持灵活的数据格式转换,同时可以设置定时调度任务,他是一个数据同步框架,类似于 kettle。
市面上类似的数据同步框架有,Datax,flume等
优点是官方提供了一个webui,所有的操作都可以通过鼠标拖拽来完成。
二、术语概念
| NiFi 术语 | 描述 |
|---|---|
| FlowFile | 数据在NIFI中传输时封装的对象,分为属性(attribute)和内容,其中属性是键值对的头信息,内容为字符串。 |
| FlowFile Processor | 数据处理器组件,通过选择不同的处理器,对数据进行不同的读写或者转换清洗等操作。 |
| Connection | 处理器直接的连接,单个处理器可以有多个连接完成数据的分流。 |
| Flow Controller | 流控制器管理连接器中的资源分配。 |
| Process Group | 处理组,将多个处理器连接的链路封装起来作为一个组管理。 |
三、下载安装
将下载的文件nifi-1.19.1-bin.zip,上传到服务器的/opt/目录
新建一个文件夹,nifi,并将nifi-1.19.1-bin.zip 解压到该目录
unzip nifi-1.19.1-bin.zip -d /opt/nifi
如果没有unzip的话,需要下载一个
sudo yum -y install unzip
NiFi核心配置
(1)修改web地址和端口号
vim conf/nifi.properties
# 152行(默认127.0.0.1,外部无法访问)
nifi.web.https.host=服务器实际IP
nifi.web.https.port=8443
(2)设置登录账号
密码有要求,最低12位
bin/nifi.sh set-single-user-credentials admin 123456789012
启动:
(1)NiFi后台启动/关闭命令
bin/nifi.sh start
bin/nifi.sh stop
bin/nifi.sh status
(2)NiFi前台启动/关闭命令
bin/nifi.sh run #Ctrl+c 关闭
(3)web访问
输入账号密码即可进入控制台
四、使用
我们现在可以通过在画布中添加Processor来开始创建数据流。
各个处理器的用途及配置在官网上都有介绍,大约提供了近300个常用处理器。包含但不限于:数据格式转换、数据采集、数据(local/kafka/solr/hdfs/hbase/mysql/hive/http等)的读写等功能,使用方便,如果不能满足需求,还可以自定义处理器
- 可以从文件目录同步文件
- 可以从mysql等数据库同步数据到hdfs
- 可以消费kafka消息,同步到指定的系统
网上学习资料:
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




