有沒有人有過使用HBaseStorage通過Pig在Dataproc上從Bigtable載入數據的經驗或成功?使用HBaseStorage從Bigtable通過Pig載入Dataproc
這是我試圖運行的一個非常簡單的Pig腳本。它會失敗,並顯示無法找到BigtableConnection類的錯誤,我想知道我可能會錯過哪些設置以成功從Bigtable加載數據。
raw = LOAD 'hbase://my_hbase_table'
USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
'cf:*', '-minTimestamp 1490104800000 -maxTimestamp 1490105100000 -loadKey true -limit 5')
AS (key:chararray, data);
DUMP raw;
步驟我跟着設置我的集羣:
- 推出BigTable叢集(my_bt);創建並填充my_hbase_table
- 推出Dataproc簇(my_dp)經由cloud.google.com雲Dataproc控制檯 上Dataproc主(/opt/hbase-1.2.1)以下說明
- 安裝HBase的殼上https://cloud.google.com/bigtable/docs/installing-hbase-shell
- 添加的屬性到
hbase-site.xml
爲my_bt和BigtableConnection類 - 創建文件
t.pig
經由命令上述 - 調用豬列出內容:
gcloud beta dataproc jobs submit pig --cluster my_dp --file t.pig --jars /opt/hbase-1.2.1/lib/bigtable/bigtable-hbase-1.2-0.9.5.1.jar
- 有以下錯誤指示BigtableConnecti上未找到類:
2017年3月21日15:30:48029 [JobControl作業控制] ERROR org.apache.hadoop.hbase.mapreduce.TableInputFormat - java.io.IOException的:拋出java.lang.ClassNotFoundException:COM .google.cloud.bigtable.hbase1_2.BigtableConnection
我會建議使用陰影bigtable mapreduce jar,它具有所有的依賴關係喲你需要。轉到http://search.maven.org/#search%7Cga%7C1%7Cbigtable%20mapreduce,然後下載「shaded.jar」。 –
看起來像',並且'由於缺少空間來分隔它們而自動附加到@SolomonDuskis的URL;你想訪問http://search.maven.org/#search%7Cga%7C1%7Cbigtable%20mapreduce來下載工件。 –
我下載了shaded.jar並在提交豬作業時得到相同的錯誤。如果有幫助,我可以上傳運行測試時得到的輸出。 – EduBoom