0

我正在使用 lucene 3.0.1 来索引 hbase 中的列。在 lucene 中进行查询后,我在 java 中得到了一个键数组(与我在 hbase 中的键格式相同),现在对于所有这些键,我想对 hbase 进行查询并从数据库中获取相应的行。我无法在 hbase 文档中找到 IN 运算符,其他选项是我循环遍历一组键并对 hbase 进行查询,但在这种情况下,我将进行大量 hbase 数据库调用。是否有任何其他选择,非常感谢任何帮助。谢谢

4

1 回答 1

1

HTable 类的 get 方法可以接受一个 GET 对象列表并批量获取它们,请参阅文档

你基本上需要做类似的事情

 List<Get> rowsToGet= new ArrayList<Get>();
 for (String id:resultsFromLucene)
       rowsToGet.add(new Get(Bytes.toBytes(id)));  
 Result[] results = htable.get(rowsToGet);
于 2013-08-14T07:07:53.180 回答