2

次の違いは何ですか(特にパフォーマンスの点で):

  1. *:*クエリと 2 つのフィルター クエリの使用

例: http://127.0.0.1:8080/solr/select?q=*:*fl=id&fq=lat:[42.2823890429 TO 42.4224427748] AND lng:[-71.3345718384 TO -70.7612228394]

  1. 1 つのクエリと 1 つのフィルター クエリの使用

例: http://127.0.0.1:8080/solr/select?q=lat:[42.2823890429 TO 42.4224427748]&fl=id&fq=lng:[-71.3345718384 TO -70.7612228394]

結果は、簡単にするために上記のクエリ例には含まれていなかったタイムスタンプに従って並べ替えられます。拡大が予想される小さなデータセットに対して、それぞれ 37 と 32 のクエリ時間を取得しています。

4

1 に答える 1

4

Luceneフィルターとクエリの違いがすべてです。フィルタはキャッシュ可能であるため、より高速です。また、フィルターはドキュメントのスコアに影響を与えません。通常、クエリは、ユーザーが全文検索ボックスにクエリとして入力するものですが、検索を絞り込む他のすべての方法は、事前に定義され、フィルターとして適用されます。経験則は次のとおりです。可能な場合はフィルターを使用してください。

于 2012-09-29T15:04:15.510 に答える