0

hbase の列にインデックスを付けるために lucene 3.0.1 を使用しています。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 に答える