Solrページネーション(カーソル)の使用
ページネーション(カーソルとも呼ばれる)では、カーソルによる結果のスキャンをサポートしています。Solrページネーションの制限事項が適用されます。
DataStax Enterpriseでは、ネイティブのドライバー・ページングとSolrのカーソルベースのページングが統合されています。ページネーション(カーソルとも呼ばれる)では、カーソルによる結果のスキャンをサポートしています。Solrページネーションの制限事項が適用されます。CQL SolrクエリーおよびSolr HTTP APIを使用できます。
注: Cassandraページネーションが有効になっている状態でCQL Solrクエリーを使用すると、ページネーションが構成されている場合にSolrではそのクエリー結果キャッシュを使用することができないので、パフォーマンスが低下する場合があります。大規模な結果セットからページネーションを行わない場合は、CQL Solrクエリーの実行時にページネーションを無効にします。ドライバーのドキュメントを参照してください。
CQL Solrクエリーでのカーソルの使用
CQL Solrクエリーでドライバーを使用する場合、ドライバーがページネーション(カーソルとも呼ばれる)を使用する場合にのみページネーションを使用するように指定できます。dse.yamlファイルでcql_solr_query_pagingオプションを設定すると、driverに設定されます。CQL Solrクエリーでカーソルをオフにするには、dse.yamlファイルでcql_solr_query_pagingオプションをoffに設定します。CQLおよびJSONクエリーでpaging:driverパラメーターを使用し、ページネーションを動的に有効化することができます。
詳細については、ドライバーのドキュメントを参照してください。ソート句の使用は必須ではありません。ただし、ソート句を指定しなければソートは定義されません。
例
SELECT * from ks.cf where solr_query='{"q":"*:*", "sort":"id asc, id2 asc"}'
SELECT * from ks.cf where solr_query='{"q":"*:*"}'
HTTP APIでのカーソルの使用
Solr HTTP APIでカーソルを使用する場合、必ずしもソート句を指定する必要はありません。ただし、ソート句を指定しなければソートは定義されません。思い込みでソートの方法を決め付けることなく、「CQL Solrクエリーの使用」の手順に従ってください。