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

Nó Ingest do Elasticsearch

index.blocks.read_only1 true/false

Definir como true tornará o índice e os metadados de índice apenas leitura, definir como false permitirá escrita e alteração de metadados.

Às vezes precisamos indexar o documento antes de convertê-lo. Por exemplo, devemos remover um campo do documento ou renomeá-lo e, em seguida, indexá-lo. Isso é tratado pelo nó de ingestão.

Cada nó no cluster tem a função de extração, mas também pode ser personalizável para que seja processado apenas por nós específicos.

Etapa

O trabalho do nó de ingestão envolve duas etapas-

  • Criar tubo

  • Estabelecer arquivo

Criar tubo

Primeiro, crie um tubo contendo processadores e execute o tubo, conforme mostrado-

PUT _ingest/pipeline/int-converter
{
   "description": "converte o conteúdo do campo seq para um inteiro"
   "processors" : [
      {
         "convert" : {
            "field" : "seq",
            "type": "integer"
         }
      }
   ]
}

Ao executar o código acima, obtemos o seguinte resultado-

{
   "acknowledged" : true
}

Estabelecer arquivo

A seguir, usamos o conversor de tubo para criar um documento.

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

Após executar o código acima, obtemos a seguinte resposta:

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

A seguir, usamos o comando GET para procurar o documento criado acima, conforme mostrado-

GET /logs/_doc/1

Ao executar o código acima, obtemos o seguinte resultado-

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

Você pode ver acima21Tornar em inteiro.

Sem tubo

Agora, não precisamos usar o tubo para criar documentos.

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

Ao executar o código acima, obtemos o seguinte resultado-

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

Você pode ver acima11É uma string que não usa tubo.