2011-03-15 48 views
0

我想讀取基於兩個家族(如姓名和年齡)的HBase表。 我們該怎麼做?如何根據表中的兩個家族讀取Hbase表

+0

不確定你的意思,特別是爲什麼名字和年齡是家庭。如果你的意思專欄看看http://stackoverflow.com/questions/5323700/is-there-any-way-to-limit-the-number-of-columns-in-hbase/5324242#5324242 – imyousuf 2011-03-16 10:54:07

回答

0

HBase具有表,列系列和列限定符。一般建議是創建儘可能少的色譜柱族(< < 10)。

行鍵指定特定的數據。所以,如果你想獲得一個特定的行你構建一個GET:

Get g = new Get(rowkey); 

一旦你有一個結果,你可以通過指定的家庭/預選賽拉出一個給定列預選賽:

HTable t = new HTable(tablename); 
Result row = t.get(g); 
byte[] value = row.getValue(family, qualifier); 

你也可以遍歷行中所有鍵/值對(其中鍵包含列家族/列限定符):

List<KeyValue> list = row.list(); 
for (KeyValue kv: list) { 
... 
} 
相關問題