1. 程式人生 > >Phoenix通過MapReduce對HBase批量匯入資料

Phoenix通過MapReduce對HBase批量匯入資料

在用該方法之前,請確保hadoop、hbase、phoenix已經啟動。

在phoenix的安裝目錄下使用以下程式碼,啟動MR

HADOOP_CLASSPATH=/opt/hbase-0.98.8-hadoop2/conf hadoop jar phoenix-4.9.0-HBase-0.98-client.jar org.apache.phoenix.mapreduce.CsvBulkLoadTool -t XS_COPY -i /data/xs.csv

程式碼解析:
/opt/hbase-0.98.8-hadoop2/conf:hbase下的conf路徑;
hadoop jar :啟動MR;
phoenix-4.9.0-HBase-0.98-client.jar:phoenix的安裝目錄下的jar包;
org.apache.phoenix.mapreduce.CsvBulkLoadTool :csv格式裝載工具包;
-t :指定表名的命令
XS_COPY :表名
-i :匯入資料的命令
/data/xs.csv:HDFS根目錄下的data資料夾中的資料,資料檔名為xs.csv

*注意:*
1. 上述說的在phoenix的安裝目錄下使用以下程式碼的原因是,在hadoop jar 後直接使用的是phoenix-4.9.0-HBase-0.98-client.jar,而phoenix-4.9.0-HBase-0.98-client.jar就是直接位於phoenix的安裝目錄下。
2. 如果想要在任意目錄下以該方式啟動MR,就需要使用phoenix-4.9.0-HBase-0.98-client.jar的完整路徑,如/opt/phoenix-4.9.0-HBase-0.98-bin/phoenix-4.9.0-HBase-0.98-client.jar。
3. 由於是使用MR操作,後面的資料來源必須位於HDFS上。
官網給的式樣是1,而2是我親測的方法,一樣可行,就打消了為什麼一定在phoenix的安裝目錄下啟動MR的疑慮。
至於檢視驗證,就不再贅述。