3

astyanax クライアントと RowSliceQuery を使用して、列ファミリーのすべての行をページ分割するクエリを作成しようとしています。

keyspace.prepareQuery(COLUMN_FAMILY).getKeyRange(null, null, null, null, 100);

最初の呼び出しがnullの開始キーと終了キーで行われるhectorを使用して、これを正常に実行しました。最初のページを取得した後、結果の最後のキーを使用して 2 ページ目などのクエリを作成します。これは、hector を使用した最初のページのコードです。

HFactory.createRangeSlicesQuery(keyspace,
LongSerializer.get(), new CompositeSerializer(),
BytesArraySerializer.get())
.setColumnFamily(COLUMN_FAMILY)
.setRange(null, null, false, 100).setRowCount(100);

astyanax でこれを実行しようとすると、null および null 以外のキーとトークンに関するエラーが発生します。このクエリでトークンが何をするのかわかりません。また、allRows() を使用することもできますが、柔軟性が向上するため、キー範囲クエリを使用してこれを行いたいと考えています。

astyanax を使用したキー範囲クエリの例はありますか? 「はじめに」のドキュメントにも、ネット上の他の場所にも例が見つかりません。

ありがとう!アントン

4

2 に答える 2

-1

このサンプルコードを確認してください。このコードがページングの実行に役立つことを願っています。

IndexQuery<String, String> query = keyspace
   .prepareQuery(CF_STANDARD1).searchWithIndex()
   .setRowLimit(10).autoPaginateRows(true).addExpression()
   .whereColumn("Index2").equals().value(42);

一番、

于 2012-10-17T09:35:00.413 に答える