2013-04-26 58 views
2

我想找到一種方法來將hbase查詢結果讀入製表符分隔的文本文件。 HBase的表people如何將hbase表打印到一個製表符分隔的文本文件

結構:

12 column-name=name;value=John Smith 
10 column-name=name;value=Jack Johnson 

我想在其中像這樣創建一個文本文件,它輸出:

- 12(tab)John Smith 
- 10(tab)Jack Johnson 

是否有可用於此的任何工具,如出口可用於輸出hbase到hdfs?

回答

2

如果你只需要導出一個完整的表的HBase附帶了一個工具來做到這一點看here

另一種選擇是使用豬這也將讓你操縱/過濾器等的結果導出例如前

SOURCE = LOAD 'hbase://tableName' 
     USING org.apache.pig.backend.hadoop.hbase.HBaseStorage(
     'cfName:name', '-loadKey true') 
     AS (id:bytearray, name:chararray); 

-- do some filtering or other manipulation here 
STORE SOURCE INTO '/result_file' USING PigStorage('\t'); 

編輯:我只注意到這個被加上蜂巢所以如果你使用,你可以這樣做INSERT OVERWRITE DIRECTORY '/result_file' SELECT * FROM table_name;(替換爲您的查詢選擇)

+0

非常感謝!我會嘗試它,讓你知道,我們的網格已經關閉,所以不能立即測試它 – user2325080 2013-04-29 19:23:40

+0

試圖導出!工作...但是,當我嘗試hadoop dfs -text文件時,我得到的是一個缺少類名的異常 java.lang.RuntimeException:java.io.IOException:WritableName無法加載類:org.apache.hadoop .hbase.io.ImmutableBytesWritable – user2325080 2013-04-30 22:42:12

+0

http://stackoverflow.com/questions/16310177/sequence-files-created-by-hbase-export-utility-arent-readable – user2325080 2013-04-30 22:48:36

相關問題