English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Нодя Ingest Elasticsearch

index.blocks.read_only1 true/false

Установите в true, чтобы индекс и метаданные индекса были только для чтения, установите в false, чтобы разрешить写入 и изменение метаданных.

Иногда нам нужно индексировать документ до его преобразования. Например, мы хотим удалить поле из документа или переименовать его, а затем индексировать. Это обрабатывается узлом Ingest.

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

Шаг

Работа узла摄取 включает два шага-

  • Создание канала

  • Создание файла

Создание канала

Сначала создайте канал, содержащий процессоры, и затем выполните его, как показано ниже-

PUT _ingest/pipeline/int-converter
{
   "description": "converts the content of the seq field to an integer"
   "processors" : [
      {
         "convert" : {
            "field" : "seq",
            "type": "integer"
         {}
      {}
   ]
{}

При выполнении вышеуказанного кода мы получили следующие результаты-

{
   "acknowledged" : true
{}

Создание файла

Далее, мы используем pipeline-конвертер для создания документа.

PUT /logs/_doc/1?pipeline=int-converter
{
   "seq":"21",
   "name":"w3codebox",
   "Addrs":"Hyderabad"
{}

После выполнения вышеуказанного кода мы получаем следующий ответ:

{
   "_index": "logs"
   "_type": "_doc"
   "_id" : "1",
   "_version": 1"
   "result" : "created"
   "_shards" : {
      "total" : 2,
      "successful" : 1,
      "failed" : 0
   },
   "_seq_no" : 0,
   "_primary_term" : 1
{}

Далее, мы используем команду GET для поиска созданного документа, как показано ниже-

GET /logs/_doc/1

При выполнении вышеуказанного кода мы получили следующие результаты-

{
   "_index": "logs"
   "_type": "_doc"
   "_id" : "1",
   "_version": 1"
   "_seq_no" : 0,
   "_primary_term": 1"
   "found": true"
   "_source": {
      "Addrs" : "Hyderabad",
      "name" : "w3codebox",
      "seq" : 21
   {}
{}

Вы можете видеть, что 21 стал целым числом в верхней части.

Без.pipeline

Теперь мы можем создавать документы без использования.pipeline

PUT /logs/_doc/2
{
   "seq":"11",
   "name":"Tutorix",
   "Addrs":"Secunderabad"
{}
GET /logs/_doc/2

При выполнении вышеуказанного кода мы получили следующие результаты-

{
   "_index": "logs"
   "_type": "_doc"
   "_id": "2"
   "_version": 1"
   "_seq_no": 1"
   "_primary_term": 1"
   "found": true"
   "_source": {
      "seq": "11"
      "name": "Tutorix"
      "Addrs": "Secunderabad"
   {}
{}

Вы можете увидеть, что 11 - это строка, не использующая трубку.