Нечеткость не ведет себя так, как ожидалось в Elasticsearch - PullRequest
0 голосов
/ 08 апреля 2019

Я пытаюсь протестировать несколько тестовых случаев для своего проекта, который я делаю в Elasticsearch.Результат, заданный запросом нечеткости, сбивает с толку для конкретного случая: - При поиске ключевого слова Mall с нечеткостью 2, примененной в запросе с несколькими совпадениями, оно также соответствует Миле .

As per fuzziness documentation :-
=> 0 edits are allowed for string length is 0-2 .
=> 1 edit is allowed for  string length is 3-5.
=> 2 edits are allowed for string length greater than 5.

Если это так, почему MILE соответствует MALL , потому что согласно логике должно быть разрешено только одно редактирование, и если мы видим для MALL-> MILE, нам нужно2 правки.Elasticsearch ведет себя так, как ожидалось, или я что-то здесь упускаю.Я использую простой анализатор пробелов для поля и запроса, используя

         {  "query": {
            "multi_match": {
                "query": "mall",
                "fields": [
                          "name"
                 ],
                 "fuzziness": 2
          } }}

1 Ответ

2 голосов
/ 08 апреля 2019

Документация, которую вы выделили, предназначена только для случаев, когда вы указываете "fuzziness": "AUTO", в противном случае, если вы указываете нормальное число (0, 1 или 2), то это число учитывается (в вашем случае, 2)

...