2

私が高レベルで達成しようとしているのは、複数のフィールドで顧客と注文の両方を照会するオートコンプリート入力フィールドであり、顧客は顧客名検索で上位にランク付けされます。

Elasticsearch が提供するツールを使用してこの問題にアプローチするには、さまざまな方法があるように思えます。

私がこれにアプローチした方法は、部分的なクエリを複数のフィールドで機能させるために、型のあるmulti_matchクエリを使用することです。prefix_phrase

たとえば、「bo」は「Bob Smith」と「Adam Boss」の一致を返す必要があります。「アダム ボス」も有効なプレフィックス マッチを返すように、名と姓とは別のフィールドとしてフルネームをインデックス化しています。

さらに、顧客の結果を向上させたいと考えていますboost。 multi_match のパラメーターを使用してそれを実行しようとしていますが、期待どおりに機能していないようです。

この問題に取り組むための簡単な方法は何でしょうか?

Elasticsearch ドキュメントで私が直面している課題の 1 つは、どのプロパティと機能が他のどのプロパティと機能に適用されるかが必ずしも明確ではないことです。たとえば、multi_match のドキュメントでは、フィールド レベル以外でのカスタム ブーストの使用については言及されていません。

4

1 に答える 1

2

最良の方法は、ES (v0.90.3+) の補完サジェスターを使用することだと思います。実際の使用例については、こちらを参照してください。

http://www.elasticsearch.org/blog/you-complete-me/ http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-suggesters-completion.html

于 2013-11-26T09:03:29.970 に答える