Расстояние Левенштейна по индексу упругости - PullRequest
0 голосов
/ 31 мая 2018

В настоящее время создается поисковая система с Node и Elasticsearch.Я пытаюсь найти способ применить расстояние Левенштейна к индексу.Например, если у меня есть индекс javascript и введенный поисковый термин содержит jvascrpt, если я применяю расстояние Левенштейна, равное 2, он должен только запросить этот индекс.

Если, сприменяемое расстояние , запрос не совпадает, тогда все индексы должны быть запрошены.Я знаю, что это уже возможно при установке индекса property to _all` или пустой строки.

Мне известно о свойстве fuzziness в запросе, но оно находится в body документа.Есть ли способ применить это свойство и к индексу?

Согласно документации 1017 *, свойство index принимает только типы String, String[] или Boolean поэтому оцените, что запрос не может быть привязан к этому свойству.

Если Elasticsearch не предоставляет эту функцию, я найду способ реализовать ее в JS.Итак, я спрашиваю, есть ли какая-либо функциональность, предоставляемая Elasticsearch, которую вы можете применить к query свойству (предполагается) , где вы можете применить расстояние Левенштейна (то есть черезfuzziness свойство) до index.Что-то вроде этого может быть?:

query: {
    match: {
        index: {
            query: textToSearch,
            minimum_should_match: 1,
            fuzziness: 1
        }
    }
}

1 Ответ

0 голосов
/ 04 июня 2018

Я справился с этим, добавив свойство index в тело документа.Затем я могу запросить это поле обычным способом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...