Как обновить несколько элементов в ElasticSearch?

Допустим, у меня есть тип tagв индексе ElasticSearch со следующим сопоставлением:

{
    "tag": {
        "properties": {
            "tag": {"type": "string", "store": "yes"},
            "aliases": {"type": "string"}
        }
    }
}

Каждая запись это тег и массив псевдонимов для этого тега. Вот пример элемента:

{
    "word": "weak",
    "aliases": ["anemic", "anaemic", "faint", "flimsy"]
}

Время от времени я хочу добавлять новые слова-теги с их псевдонимами и добавлять новые псевдонимы к существующим словам-тегам.

Добавление новых слов-тегов с их псевдонимами легко, это просто новый документ. Однако, как я могу добавить новые псевдонимы к существующим словам-тегам разумным способом?

Я знаю, что могу просто найти слово тега, получить его документ, выполнить поиск, чтобы увидеть, существует ли уже псевдоним в массиве псевдонимов, если не добавить его, то сохранить. Однако -это не кажется хорошим решением.

Есть ли способ сделать массовое обновление?

11
задан Laurel 15 May 2016 в 18:04
поделиться