Руководство по Solr suggester / простой пример для java

#java #solr #autosuggest

#java #solr #автоматическое предложение

Вопрос:

Я вижу некоторый вопрос о том, как делать конкретные вещи с Suggester в Solr, но как насчет того, как на самом деле его использовать? Я застрял в том, как просто запросить suggest api, чтобы получить результаты на Java, возможно, используя Solrj? Я просто не могу найти ни одного простого руководства, которое объясняло бы это.

Все, что у меня есть, это класс SuggesterTest, который даже после 3 часов попыток декодирования я все еще не могу понять, как все работает, особенно сумасшедшие запросы, которые выглядят как:

 req("qt", requestUri, "q", "ac", SpellingParams.SPELLCHECK_COUNT, "2", SpellingParams.SPELLCHECK_ONLY_MORE_POPULAR, "true"),
            "//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/int[@name='numFound'][.='2']",
            "//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/arr[@name='suggestion']/str[1][.='acquire']",
            "//lst[@name='spellcheck']/lst[@name='suggestions']/lst[@name='ac']/arr[@name='suggestion']/str[2][.='accommodate']"
  

Неужели нет ничего проще этого?

Кроме того, еще один вопрос, нужно ли мне перестраивать индекс для предложений? допустим, я добавил некоторые данные ранее, и теперь хочу использовать их с suggester. Нужно ли мне также где-то указывать, какое поле я хочу запросить в предложениях?

Спасибо!

Комментарии:

1. Ну, я отказался от этого, я не мог заставить это работать. Вместо этого я решил использовать EdgeNGrams: lucidimagination.com/blog/2009/09/08 / … и это работает довольно хорошо для того, что мне нужно. Затем в коде Java я просто использую обычный запрос.

2. Можете ли вы ответить на вопрос самостоятельно, а затем, когда сможете принять этот ответ. Кроме того, вам нужно принять ответы на предыдущие вопросы, если они решают вашу проблему.