Ковши документов, сгруппированные по срочной частоте

Я хочу сегментировать результаты Elasticsearch в ведрах, так что аналогичные документы (с большинством совпадающих терминов) группируются вместе (в анализируемом поле) в результатах. Я не уверен, как сделать так, чтобы агрегированные ведра отдельных документов.

Вот базовое отображение:

PUT movies
{
  "mappings": {
    "movie": { 
      "properties": { 
        "id":    { "type": "long" }, 
        "title": { "type" : "text" }
      }
    }
  }
}

Например, если запрос выполняется, hungerто результаты должны быть сгруппированы в виде кодов совпадающих документов с большим количеством похожих терминов:

{
    "buckets": {
        "1": [
            {
                "title": "The Hunger Games"
            },
            {
                "title": "The Hunger Games: Mockingjay"
            },
            {
                "title": "The Hunger Games: Catching Fire"
            }
        ],
        "2": [
            {
                "title": "Aqua Teen Hunger Force"
            },
            {
                "title": "Force of Hunger"
            }
        ],
        "3": [
            {
                "title": "Hunger Pain"
            }
        ],
        :
        :
        :
    }
}

В приведенном выше примере аналогичные документы сгруппированы в отдельные ведра на основе, по меньшей мере, двух согласующих терминов. Все совпадающие названия без похожих терминов по-прежнему включаются в результаты в виде отдельных ведер (например, ведро №3).

Любые предложения приветствуются.

elasticsearch,

1

Ответов: 0

Ковши документов, сгруппированные по срочной частоте

Я хочу сегментировать результаты Elasticsearch в ведрах, так что аналогичные документы (с большинством совпадающих терминов) группируются вместе (в анализируемом поле) в результатах. Я не уверен, как сделать так, чтобы агрегированные ведра отдельных документов.

Вот базовое отображение:

PUT movies
{
  "mappings": {
    "movie": { 
      "properties": { 
        "id":    { "type": "long" }, 
        "title": { "type" : "text" }
      }
    }
  }
}

Например, если запрос выполняется, hungerто результаты должны быть сгруппированы в виде кодов совпадающих документов с большим количеством похожих терминов:

{
    "buckets": {
        "1": [
            {
                "title": "The Hunger Games"
            },
            {
                "title": "The Hunger Games: Mockingjay"
            },
            {
                "title": "The Hunger Games: Catching Fire"
            }
        ],
        "2": [
            {
                "title": "Aqua Teen Hunger Force"
            },
            {
                "title": "Force of Hunger"
            }
        ],
        "3": [
            {
                "title": "Hunger Pain"
            }
        ],
        :
        :
        :
    }
}

В приведенном выше примере аналогичные документы сгруппированы в отдельные ведра на основе, по меньшей мере, двух согласующих терминов. Все совпадающие названия без похожих терминов по-прежнему включаются в результаты в виде отдельных ведер (например, ведро №3).

Любые предложения приветствуются.

01elasticsearch,
Похожие вопросы