系列文章目录
首先nifi官网下载nifi安装包:http://nifi.apache.org/download.html,这是nifi文档地址 http://nifi.apache.org/docs.html
一、NIFI是什么?
什么是Nifi 借用官网的一句话
Put simply, NiFi was built to automate the flow of data between systems. While the term 'dataflow' is used in a variety of contexts, we use it here to mean the automated and managed flow of information between systems. This problem space has been around ever since enterprises had more than one system, where some of the systems created data and some of the systems consumed data. The problems and solution patterns that emerged have been discussed and articulated extensively. A comprehensive and readily consumed form is found in the Enterprise Integration Patterns [eip].
简而言之,NiFi 旨在自动化系统之间的数据流。虽然术语“数据流”在各种上下文中使用,但我们在这里使用它来表示系统之间的自动化和管理的信息流。自从企业拥有多个系统以来,这个问题空间就一直存在,其中一些系统创建数据,一些系统消耗数据。已经广泛讨论和阐述了出现的问题和解决方案模式。企业集成模式 [eip]中提供了一个全面且易于使用的形式。
http://nifi.apache.org/docs.html NIFI官网文档地址(组件用法及功能都有介绍)
二、使用步骤
1.下载解压
- 在解压目录下的conf文件夹中修改nifi.properties文件
修改nifi端口和host地址 , 查找 nifi.web.http.port 和 nifi.web.http.host, 在windows 版本中 (nifi.web.http.port ,nifi.web.http.host 与 nifi.web.https.host ,nifi.web.https.port 只能共存一组,区别就是请求的时候一个是http请求,一个是https的请求......我个人认为)在这里我配置的是 https的
2. 启动NIFI 在bin目录下 run-nifi.bat 是启动,dump-nifi.bat是停止 ,status-nifi.bat 是查看NIFI 进程
启动 run-nifi.bat 会在解压目录下 logs文件夹中生成日志,查看nifi-app.log
查看nifi-app.log 文件日志,这种是启动成功的,https://127.0.0.1:9090/nifi 是你 Nifi的webUI访问地址 初始启动会生成用户名和密码 在文件中搜索
Generated Username [*********************] 用户名,Generated Password [*******************]密码,后续登录需要用户名和密码
例:
2.登录nifi并使用
访问 自己配置的nifi地址 https://127.0.0.1:9090/nifi/login,输入初始的用户名和密码登录
MYSQL数据库组件:
数据库到数据库之间数据同步需要的组件有:ExecuteSQL,ConvertAvroToJSON,ConvertJSONToSQL,PutSQL,SplitJson,EvaluateJsonPath,ReplaceText。具体流程:使用ExecuteSQL连接mysql数据库,通过写sql查询所需要的数据,nifi默认查出来的数据为Avro格式,所以需要ConvertAvroToJSON把Avro格式转化为json格式的数据,然后使用ConvertJSONToSQL把json数据转化为sql语句,最后使用PutSQL把数据存入数据库。为了使已同步的数据重复插入数据库,需要对数据进行更新操作,SplitJson对json进行拆分,EvaluateJsonPath提取json中的某个属性作为参数,ReplaceText根据参数编写update语句进行更新操作,PutSQL更新数据库。
首先拖拽一个processor 获取 搜索 ExecuteSQL然后ADD添加
数据库配置点击下拉创建一个新的,咱们选择普通的
你得要把mysql 连接的jar包 放到 nifi解压目录下的lib文件夹中 mysql-connector-java-5.1.35.jar
然后添加 ConvertAvroToJSON
不需要改配置
添加 ConvertJSONToSQL
添加 PutSQL
配置完成 后连线组件
然后 start 启动 运行nifi
然后看队列中 右键 List queue 查看数据 日志
然后再看数据库 就入库成功了
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。