Как объединить разные индексы в запросе «больше похоже на это»? - PullRequest
1 голос
/ 20 января 2020

Документы MLT-запроса дают следующий пример (сокращенный мной) для получения документа, аналогичного существующему документу:

"query": {
        "more_like_this" : {
            "fields" : ["title", "description"],
            "like" : [
            {
                "_index" : "imdb",
                "_id" : "1"
            }],
            "min_term_freq" : 1,
            "max_query_terms" : 12
        }
    }

, который, кажется, сравнивает "заголовок" и поля "description" среди mov ie заголовков к одному mov ie с идентификатором 1. Предположим, у меня есть индекс для комментариев людей, и я хотел бы получить все заголовки mov ie, которые имеют "title" или «описание» похоже на один конкретный комментарий.

Я знаю, что мог бы предоставить свободный текст в качестве значения для поля «Мне нравится» - хотя документ (комментарий) уже является частью другого индекса, поэтому я бы хотел использовать это. Только не на основе полей «заголовок» и «описание» (которых не было бы в комментарии), но скажем, его поле «тело». Как бы я это сделал?

1 Ответ

0 голосов
/ 20 января 2020

Вы можете добавить один и тот же псевдоним для обоих индексов: https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-aliases.html

и выполнить запрос к псевдониму

примечание: это приведет к более высокой нагрузке на ваш эласт c кластер.

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