【发布时间】:2016-01-20 20:30:07
【问题描述】:
在 hbase 中,我有多个列:名称、城市、...
并非所有列都有值(例如,某些行只能有“名称”)
我想提取一行中的所有列+列的时间戳(按特定顺序),如果值为null,我想返回空字符串。
我面临的问题,我必须通过'family'和'qualifier'访问Result中的列(我无法通过result.listCells().get(i)的索引访问,因为跳过了空值)
scan.addColumn(Bytes.toBytes("personal data"), Bytes.toBytes("name"));
scan.addColumn(Bytes.toBytes("personal data"), Bytes.toBytes("city"));
ResultScanner scanner = table.getScanner(scan);
for (Result result = scanner.next(); result != null; result = scanner.next()){
byte [] valCity = result.getValue("personal data", "city"); //can't get timestamp using this
//check if valCity null write ("") else write the value
//next column...
}
【问题讨论】:
-
您的答案在这里:stackoverflow.com/questions/24846243/… 希望对您有所帮助。