一.安裝:NiFi 是免安裝地,僅需從官網下載壓縮包,而後解壓,即完成了整個安裝過程,官網下載安裝包(http://nifi.apache.org/download.html),選擇nifi-x.x.x-bin.tar.gz的最新版本便可。解壓結束即完成安裝過程。html
二.配置:修改配置文件nifi.properties(路徑/usr/download/nifi-1.7.1/conf,根據解壓位置而定),作以下修改:修改成本機ip,默認端口爲8080,這裏修改成9191.java
# web properties #
nifi.web.war.directory=./lib
nifi.web.http.host=192.168.203.7 # 設置成本機的 ip
nifi.web.http.port=9191
nifi.web.https.host=
nifi.web.https.port=
nifi.web.jetty.working.directory=./work/jetty
nifi.web.jetty.threads=200
修改bootstrap.conf(路徑/usr/download/nifi-1.7.1/conf),修改java的jvm,默認爲512,這裏調整爲2048。mysql
# JVM memory settings
java.arg.2=-Xms2048m
java.arg.3=-Xmx2048m
三.啓動,進入/usr/download/nifi-1.7.1/bin目錄,使用命令sh nifi.sh start啓動,一樣能夠進行stop ,status,restart操做。在瀏覽器中訪問:192.168.203.7:9191/nifi,便可出現nifi的操做界面。web
四.nifi操做界面簡單介紹(具體還須要本身操做,摸索摸索):sql
五.數據庫到數據庫之間數據同步須要的組件有: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更新數據庫。數據庫
ExecuteSQLapache
配置數據庫鏈接:DBCPConnectionPooljson
ConvertAvroToJSON:bootstrap
ConvertJSONToSQL:瀏覽器
PutSQL:
SplitJson:
EvaluateJsonPath:
ReplaceText:
PutSQL(注意這地方更新的是源主機的數據庫):
配置完成後,把這幾個組件鏈接起來,以下圖:
總結:文檔不是太詳細,還有不少東西須要本身摸索,nifi不只支持數據庫之間的數據同步,各類數據流的操做都能很好的支持,各組件的具體說明請參考官方文檔:http://nifi.apache.org/docs/nifi-docs/。--------------------- 做者:zhulu52166 來源:CSDN 原文:https://blog.csdn.net/zhulu52166/article/details/83380717 版權聲明:本文爲博主原創文章,轉載請附上博文連接!