获取行HBase的特定列族中的列

时间:2012-03-17 11:12:28

标签: java hadoop hbase

我正在编写一个应用程序,通过JSP在HBase中的特定表中显示数据。我想获取特定列系列中的所有列。

有没有办法做到这一点?

2 个答案:

答案 0 :(得分:11)

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;
}

结果r是理想的行。

答案 1 :(得分:9)

如果您只对一个系列感兴趣,可以将扫描仪设置为仅提取该系列

    Scan scan = new Scan(Bytes.toBytes(startKey),Bytes.toBytes(endKey);
    scan.addFamily(Bytes.toBytes(familyName));