Какие-нибудь примеры использования Wandsearcher в vespa? (После взвешенного набора запросов) - PullRequest
3 голосов
/ 16 июня 2019

В настоящее время я использую интерфейс REST для запроса vespa, который, кажется, работает отлично, но что-то подсказывает мне, что я должен использовать поисковики в приложении, чтобы сделать клиента (код на стороне сервера) немного легче (связать файл jar впакет приложения), чтобы сделать его немного более гладким.Мне удалось сделать несколько простых приложений поиска / процессора.Но это немного ошеломляет.

Так есть ли легкодоступные примеры?

В основном я хочу:

  1. Отправить на /search?query=someId
  2. Выполните обычный поиск взвешенного набора по этому ID документа (я думаю, этот может быть полезен: https://docs.vespa.ai/documentation/reference/inspecting-structured-data.html)
  3. Возьмите эти элементы в ответ и добавьте их к элементу (ам) жезла и запроситепалочка с wandsearcher на заданном поле. Аналогично yql: "select * from sources * where wand(interest, some weightedsets));","ranking":"combined_score" и возвращает совпадения.

Просто любопытно, кроме проблемы построения строк с запросом http, который я выполняю вВ данный момент есть ли какой-нибудь прирост производительности при использовании поисковика или перехода на Java-маршрут против остальных?

спасибо за любую информацию или помощь в коде, с которой я могу начать.

1 Ответ

2 голосов
/ 16 июня 2019

Здесь приведен пример использования WandItem (палочка YQL) https://docs.vespa.ai/documentation/advanced-ranking.html и см. Также https://docs.vespa.ai/documentation/using-wand-with-vespa.html, так как в Vespa доступны две реализации палочки, это звучит из описания, что палочка ( ) - это то, что вы хотите использовать для этого варианта использования. Для первого звонка вы, вероятно, захотите иметь специальную сводку документов, чтобы уменьшить объем данных, извлекаемых для первого запроса, а также возможность обслуживания только из памяти (см. https://docs.vespa.ai/documentation/document-summaries.html)

Также см. https://docs.vespa.ai/documentation/searcher-development.html как общий ресурс по написанию поисковиков.

В вашем случае имеет смысл написать поисковик для выполнения этих двух запросов, так как ваш второй запрос зависит от первого, и вы избегаете затрат на рендеринг / http / yql, который может иметь значение, если ваш клиент удалён с высокой задержкой в ​​сети.

...