2015年10月2日 星期五

筆記Apache NiFi(二) - 範例自動Twitter Streaming API與存檔


基本兩個Processor範例Twitter Streaming API接到資料後將json儲存在本機硬碟裡。


1. 至Application Management申請Twitter APP
a. Application Management
https://apps.twitter.com
b. Create New APP
c. 鍵入資料

d. 至App頁面的Keys and Access Tokens分頁

e. Create my access token
f. 取得所需之Consumer KeyConsumer SecretAccess TokenAccess Token Secret


2. 開啟NiFi Web UI
http://localhost:8080/nifi/

3. 建立資料輸入Processor
a. 拉出一個Processor

b. 選擇GetTwitter

c. 右鍵點選Configure

d. 設定資料
i. 輸入tokenkey
ii. 選擇twitter filter的參數,範例為選擇Filter,其他Streaming API用法請參考 https://dev.twitter.com/streaming/overview
iii. Terms to Filter On 空格代表AND ,』代表OR ex. he was, boy』則為『(he AND was) OR boy
iv. Scheduling分頁可選擇TimerCRON方式,如不選擇預設為TimerRun schedule0代表一個task完成後不等待直接下一個taskRun duration為執行完成後會延遲的時間,0代表只會執行一次且不延遲。



4. 建立資料輸出Processor
a. 拉出一個Processor
b. 選擇PutFile

c. 右鍵點選Configure

d. 設定資料
i. Directory範例設為/data/tweets/

e. 選擇為失敗或成功都接收


5. 建立輸入與輸出連結

6. 啟動Processor

7. 檢查資料



筆記Apache NiFi(一) - NiFi架設


Apache NiFi根據官方說法是一個功能強大、操作便利的資料數據處理data flow系統,內含一個Web UI介面建立data flow的Processor與Scheduling。目前為0.3.0版本,尚處於成長階段,故未有使用者登入、管理功能。不過經Johnny測試後的確不用再寫許多程式碼便可操作許多資料流。以下介紹如何架設一個Nifi系統。


*準備好一台Linux,範例建立在CentOS 6上。


1. 下載nifi Binaries (root)
a. 官網下載nifi-0.3.0-bin.tar.gz https://nifi.apache.org/download.html
b. 解壓縮
tar -xvzf nifi-0.3.0-bin.tar.gz 

2. 移至nifi-0.3.0/bin資料夾 (root)
cd nifi-0.3.0/bin

3. 啟動NiFi
./nifi.sh start

4. 關閉NiFi
./nifi.sh stop

5. 檢查NiFi狀態
./nifi.sh status

6. 或者Installing as a Service
a. Install
./nifi.sh install dataflow
b. Start
sudo service nifi start
c. Stop
sudo service nifi stop
d. Status
sudo service nifi status

NiFi Web UI
http://localhost:8080/nifi/




2015年10月1日 星期四

筆記Hortonworks叢集架設(四) - 叢集加上Hue (Hadoop Web UI 管理工具)



1. Hue需安裝在可Client HDFS的電腦上。

2. 安裝編譯相關程式
yum -y install ant \
asciidoc \
cyrus-sasl-devel \
cyrus-sasl-gssapi \
gcc \
gcc-c++ \
krb5-devel \
libtidy \
libxml2-devel \
libxslt-devel \
maven \
mysql \
mysql-devel \
openldap-devel \
python-devel \
sqlite-devel \
openssl-devel \

2. 下載Hue 3.8.1 (root)
wget https://dl.dropboxusercontent.com/u/730827/hue/releases/3.8.1/hue-3.8.1.tgz

3. 解壓縮Hue (root)
tar zxvf hue-3.8.1.tgz

4. Install Hue (root)
a. 移至資料夾
cd hue-3.8.1
b. Install
make install

5. 新增 Hue使用者與Hue群組 (root)
a. 新增群組
groupadd hue
b. 新增使用者
useradd -g hue hue

6. 修改權限 (root)
chown -R hue:hue /usr/local/hue

7. 修改 Configuration (ClusterAmbari修改)
a. HDFS
i. 修改General, 確認為打勾
ii, Custom core-site新增以下兩個參數與值
Key : hadoop.proxyuser.hue.groups , Value : *
Key : hadoop.proxyuser.hue.hosts , Value : *

8. 修改 Hue Configuration (root)
a. 修改 /usr/local/hue/desktop/conf/hue.ini
i. server設定
secret_key=jFE93j;2[290-eiw.KEiwN2s3['d;/.q[eIW^y#e=+Iei*@Mn<qW5o
ii. 其他Service的localhost參數改成對應的hostname

9. 啟動Hue (root)
a. 移至Hue資料
cd /usr/local/hue/build/env/bin
b. 啟動
./supervisor -d
c. -d 為背景啟動