Поиск…


Вступление

Kibana - это инструмент визуализации данных переднего конца для поиска elastics. для установки кибаны относятся к документации по кибане. Для запуска kibana на localhost перейдите в https: // localhost: 5601 и перейдите на консоль kibana.

Исследуйте свой кластер, используя Kibana

Синтаксис команды будет иметь следующий тип:

<REST Verb> /<Index>/<Type>/<ID>

Выполните следующую команду для изучения кластера elasticsearch через Kibana Console.

  • Для проверки работоспособности кластера
GET /_cat/health?v
  • Для перечисления всех индексов
GET /_cat/indices?v
  • Для создания индекса с именем автомобиля
 PUT /car?pretty
  • Для индексирования документа с именем автомобиля внешнего типа с использованием идентификатора 1
PUT /car/external/1?pretty
{
  "name": "Tata Nexon"
}

ответ вышеуказанного запроса будет:

{
  "_index": "car",
  "_type": "external",
  "_id": "1",
  "_version": 1,
  "result": "created",
  "_shards": {
    "total": 2,
    "successful": 1,
    "failed": 0
  },
  "created": true
}
  • получение вышеуказанного документа может быть выполнено с использованием:
GET /car/external/1?pretty
  • Для удаления индекса
DELETE /car?pretty

Измените данные поиска elasticsearch

Elasticsearch обеспечивает возможности манипулирования данными и поиска данных практически в реальном времени. в этом примере у нас есть операции обновления, удаления и пакетной обработки.

  • Обновление одного и того же документа. Предположим, мы уже проиндексировали документ на / car / external / 1. Затем запуск команды для индексирования данных заменяет предыдущий документ.
PUT /car/external/1?pretty
{
  "name": "Tata Nexa"
}

предыдущий документ автомобиля на id 1 с именем «Tata Nexon» будет обновлен с новым названием «Tata Nexa»,

  • индексирование данных с явным идентификатором
POST /car/external?pretty
{
  "name": "Jane Doe"
}

для индексации документа без Id мы используем глагол POST вместо глагола PUT . если мы не предоставим идентификатор, elasticsearch будет генерировать случайный идентификатор, а затем использовать его для индексации документа.

  • Некорректное обновление предыдущего документа на Id.
POST /car/external/1/_update?pretty
{
  "doc": { "name": "Tata Nex" }
}
  • обновление документа с дополнительной информацией
POST /car/external/1/_update?pretty
{
  "doc": { "name": "Tata Nexon", "price": 1000000 }
}
  • обновляя документ с помощью простых скриптов.
POST /car/external/1/_update?pretty
{
  "script" : "ctx._source.price += 50000"
}

ctx._source ссылается на текущий исходный документ, который должен быть обновлен. Выше сценарий позволяет одновременно обновлять только один скрипт.

  • Удаление документа
DELETE /car/external/1?pretty

Примечание. Удаление всего индекса более эффективно, чем удаление всех документов с помощью команды «Удалить по запросу»

Пакетная обработка

Помимо индексации обновления и удаления документа, elasticsearch также предоставляет возможность выполнять любую из вышеперечисленных операций партиями с использованием API _bulk .

  • для обновления нескольких документов с использованием API _bulk
POST /car/external/_bulk?pretty
{"index":{"_id":"1"}}
{"name": "Tata Nexon" }
{"index":{"_id":"2"}}
{"name": "Tata Nano" }
  • для обновления и удаления документов с использованием API _bulk
POST /car/external/_bulk?pretty
{"update":{"_id":"1"}}
{"doc": { "name": "Tata Nano" } }
{"delete":{"_id":"2"}}

Если операция завершается неудачно, объемный API не прекращается. Он выполняет все операции и, наконец, возвращает отчет для всех операций.



Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow