2012-03-17 31 views
7

Tôi đang viết một ứng dụng hiển thị dữ liệu trong một bảng cụ thể trong HBase bởi JSP. Tôi muốn nhận tất cả các cột trong một nhóm cột cụ thể cho một hàng.Lấy Cột trong một Cột Cụ thể cho một hàng HBase

có cách nào để thực hiện việc này không?

+0

tôi đạt đến một câu trả lời, nếu bạn có một giải pháp khác, xin vui lòng tư vấn cho tôi. for (Result rr = scanner.next(); rr = null;! Rr = scanner.next()) { \t \t \t \t NavigableMap familyMap = rr.getFamilyMap (Bytes.toBytes ("Thông tin")); \t \t \t \t byte [] y = (byte []) familyMap.firstEntry(). GetKey(); \t \t \t \t System.out.println (Bytes.toString (y)); \t \t } – Mahdi

Trả lời

9
public String[] getColumnsInColumnFamily(Result r, String ColumnFamily) 
{ 

     NavigableMap<byte[], byte[]> familyMap = r.getFamilyMap(Bytes.toBytes(ColumnFamily)); 
     String[] Quantifers = new String[familyMap.size()]; 

     int counter = 0; 
     for(byte[] bQunitifer : familyMap.keySet()) 
     { 
      Quantifers[counter++] = Bytes.toString(bQunitifer); 

     } 

     return Quantifers; 
} 

Kết quả r là hàng mong muốn.

8

Nếu bạn chỉ quan tâm đến một gia đình duy nhất bạn có thể thiết lập máy quét để lấy duy nhất mà gia đình

Scan scan = new Scan(Bytes.toBytes(startKey),Bytes.toBytes(endKey); 
    scan.addFamily(Bytes.toBytes(familyName)); 
Các vấn đề liên quan