任何一個大數據分析的軟件,都須要一個強大的數據拉取組件、數據倉儲系統、數據處理引擎、任務調度引擎和流程設計界面。Hadoop和Spark的重點是在數據的存儲和任務調度,R的重點是數據分析引擎。數據拉取組件和流程則是NiFi的主要強項。java
Apache NiFi 是一個易於使用、功能強大並且可靠的數據拉取、數據處理和分發系統。Apache NiFi 是爲數據流設計。它支持高度可配置的指示圖的數據路由、轉換和系統中介邏輯,支持從多種數據源動態拉取數據。NiFi原來是NSA的一個項目,如今開源出來,由Apache基金會進行管理。apache
NiFi是基於Java的,使用Maven支持包的構建管理。 NiFi基於Web方式工做,後臺在服務器上進行調度。能夠爲數據處理定義一個流程,而後進行處理,後臺具備數據處理引擎、任務調度等組件。npm
首先須要安裝maven和java的最新版,在Ubuntu上的OpenJDK會遇到遇到一些問題,所以建議從Oracle的官網http://java.com去下載,並且要SDK而不是jre。解壓後到/etc/profile文件中設置JAVA_HOME的路徑,以便讓其它的程序能訪問到。而後安裝maven,ubuntu15.04的maven版本也都過久了,到http://maven.apache.org/去下載一個最新的版本,而後設置MAVEN_HOME的路徑,並加到PATH環境變量中。設置完了後,看起來是這個樣子:ubuntu
export JAVA_HOME=/home/supermap/jdk1.8.0_51 export MAVEN_HOME=/home/supermap/GIScript/apache-maven-3.3.3 export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$PATH
如今,到http://nifi.apache.org/去下載NiFi的安裝程序。因爲NiFi採用maven進行包管理,所以編譯過程當中會自動下載大量的支持庫,須要保持網絡暢通。若是中間出錯,通常是網絡鏈接中斷引發的,從新運行編譯便可。瀏覽器
運行(爲了讓環境變量有效,最好重啓一下系統):服務器
mvn clean install
或者:mvn install -Dmaven.test.skip=true網絡
若是使用代理:maven
npm config set proxy http://proxy.company.com:8080 npm config set https-proxy http://proxy.company.com:8080
而後,等待...等結束後,進/home/supermap/GIScript/nifi-0.2.1/nifi-assembly/target,找到nifi-XXX-bin.zip這個文件,拷貝到本身的運行目錄,解壓,進去,執行:oop
./bin/nifi.sh start
而後,經過瀏覽器訪問地址:http://localhost:8080/nifi/,正常狀況下,就能看到NiFi的主界面了。大數據
中止服務使用:./bin/nifi.sh stop
目前的版本已經到1.1.X了,功能已經至關強大,可是目前的中文文檔和教程都還不多,主要經過閱讀源代碼來理解程序的邏輯。英文還能夠的,看這裏: