各行に 4 つのフィールドがある約 40,000 行のデータ セットがあります。今、テキストボックスのこれらの 4 つのフィールドにオートコンプリート メカニズムを使用したいと考えています (提案を表示する前に、これらの 4 つのフィールドの値を 1 つの文字列に連結する必要があります)。どの種類のクエリがスケーリングし、パフォーマンスが向上しますか? EdgeNGrams でのオートコンプリート、または単純なテキスト インデックスでのワイルドカード検索。
1 に答える
5
次に、テキストボックスのこれら4つのフィールドにオートコンプリートメカニズムを使用します-copyfield
を
使用して4つのフィールドすべてを単一のフィールドにダンプし、そのフィールドをAutosuggestに使用します
提案を表示する前に、これら4つのフィールドの値を1つの文字列に
連結する必要があります-値を保存したままにしておくと、クライアント側で連結を実行できます。
EdgeNGramsでのオートコンプリート、または単純なテキストインデックスでのワイルドカード検索。
--EdgeNGramsは主にインデックス時間であり、インデックス作成時間とインデックスサイズが増加し、検索結果が高速になります
-ワイルドカードクエリは低速ですが、小さすぎるとパフォーマンスにあまり影響しない場合は、インデックスサイズに依存します。注-ワイルドカードクエリの分析は実行されません。-オートサジェストのSolr用語
を
検討できます。Solrの用語を使用すると、元のフィールドは返されませんが、結果だけが返されますが、より高速になります-Solrの提案
も確認してください
于 2013-03-19T07:53:09.773 に答える