0. 寫在前面
感覺GraphLab非常驚豔,可以在python環境當中非常好地使用。但它在接受了兩輪投資之後已經由原來的免費項目變成了一個付費試用的項目。但是個人和學術使用依然可以申請。伴隨着這個商業化的過程,graphlab.org也變成了dato.com。下面詳細介紹GraphLab單機測試和集羣部署的過程。
1. 實驗環境
系統 | 主機名 | IP地址 | 內存 | CPU |
---|---|---|---|---|
Ubuntu12.04 64bit | namenode | 10.107.12.10 | 62GB | 12核 |
Ubuntu12.04 64bit | datanode1 | 10.107.12.20 | 62GB | 12核 |
Ubuntu12.04 64bit | datanode2 | 10.107.12.50 | 62GB | 12核 |
Ubuntu12.04 64bit | datanode3 | 10.107.12.60 | 62GB | 12核 |
2. GraphLab 單機環境配置
先到官網註冊申請免費使用版本
註冊完之後會跳轉到下載頁面,頁面上會提供
Product key
,記住該註冊碼,下載軟件時需要使用。點擊 INSTALL 進入安裝本地運行環境導航頁面,根據自己的系統,選擇相應的版本。
安裝python版本要高於2.7,pip版本高於7。
sudo apt-get install python python-pip ipython[notebook]
安裝GraphLab Create,your email和product key填寫你自己的郵箱和剛纔保存的註冊碼。
pip install --upgrade https://get.dato.com/GraphLab-Create/1.7.1/your email/product key/GraphLab-Create-License.tar.gz
終端輸入
ipython
,簡單測試環境是否成功,然後輸入import graphlab
,如果導入成功,恭喜你單機環境已經配置成功。這裏有一個簡單的blog教程。
3. GraphLab 集羣部署
安裝Hadoop分佈式集羣環境,詳細過程點擊這裏。
回到有註冊碼的頁面,點擊 Deploy on-premises,進入GraphLab分佈式部署下載頁面。
下載
dato-distributed-1.7.1.tar.gz
和Dato-Distributed-Services.ini license
兩個包。將兩個文件拷貝到namenode節點,並解壓。然後執行下面命令:
cd dato-distrib-1.7.1
./setup_dato-distributed.sh -d hdfs://10.107.12.10:/graphlab -k ../Dato-Distributed-License.ini -c ../../spark_sdk/hadoop-2.7.1/etc/hadoop/
-d
執行hdfs的存儲路徑,該路徑在hdfs中要不存在,否則不能創建;-k
註冊碼文件路徑;-c
hadoop配置文件的路徑。
- 集羣運行graphLab簡單程序,先在namenode終端輸入
ipython
進入python環境,然後執行下面代碼:
import graphlab as gl
# 建立集羣
c = gl.deploy.hadoop_cluster.create(
name='test-cluster',
dato_dist_path='hdfs://10.107.12.10:9000/graphlab',
hadoop_conf_dir='~/spark_sdk/hadoop-2.7.1/etc/hadoop')
def echo(input):
return input
j = gl.deploy.job.create(echo, environment=c, input='helll world!')
j.get_results()
【完】