1
{
"title" : "That Uselessly Amazing Title",
"author" : "Someone you have never heard of",
"url" : "http://www.theuselessweb.com",
"summary" : "a collection of useless websites",
"tag" : ["useless","maybe useful"]
}
私は上記のようなスキーマを持っています。ユーザーはアプリケーションに「役に立たない」何かを表示するよう求めます。ElasticSearchは複数のフィールドをファジークエリとして見ます
「役に立たない」という単語のタイトル、要約、およびタグをファジー検索として検索するクエリを作成するにはどうすればよいですか?
内部combineいくつか
fuzzy
クエリする必要があります、それが動作するようになりました。私が "役に立たない"の代わりに "使う"を試みると、結果は得られません。それはなぜですか?それも許す方法はありますか?部分的な文字列ですか? –アナライザー、トークンフィルターなどに依存します。エンティティーを索引付けして検索する方法を使用します。標準のアナライザ(英語)を使用しているとしたら、タイトルは「That」、「Uselessly」、「Amazing」、「Title」の各トークンにトークン化され、各トークンは独立して分析されます。 "役に立たない"というトークンについては、標準的な英語のアナライザが "役に立たない"(小文字)を保存していると思います。だから、あなたが "use"を検索すると結果が見つかりません。他のアナライザーで試してみてください。自分のトークンフィルターを追加したいかもしれません。私は個人的にElasticSearch.GLによって与えられたものを使用することを好む! –
標準のトークナイザーと混在したEdge NGramトークナイザーが大好きですね。覚えておいてください。 –