Como usar a API em massa do Elasticsearch

Como usar a API em massa do Elasticsearch
Elasticsearch permite que você execute várias operações CRUD usando uma única solicitação de API usando a API em massa. O uso da API em massa pode ajudar a reduzir a sobrecarga e aumentar as operações de indexação. Ao executar operações consecutivas do CRUD, é melhor usar a API em massa em vez de solicitações separadas para cada função.

Este pequeno artigo ilustrará o uso da API em massa para realizar várias operações de CRUD em uma única solicitação de API.

Elasticsearch Bulk Bunal Basics

Podemos usar a API em massa enviando uma solicitação de postagem HTTP para _bulk API Endpoint. A solicitação deve conter a operação realizada na chamada da API, como criar ou excluir um índice.

Considere o seguinte pedido.

Obtenha /índice de teste
Post _bulk
"index": "_index": "teste-index-1", "_id": 1
"Field1": "Value1"
"Update": "_id": 1, "_index": "test-index-1"
"doc": "field2": "value2"
"Delete": "_index": "teste-index-1", "_id": 1

A solicitação de exemplo acima executa três ações consecutivas de uma só vez. Ele cria um índice e adiciona um documento.

Em seguida, atualizamos o registro e excluímos -o.

Você deve ver a saída semelhante à mostrada abaixo:

Explicação

Como mencionado, a API em massa permite executar várias ações, como índice, criar, atualizar e excluir em uma única consulta.

Cada ação é especificada no corpo de solicitação usando o formato JSON Delimitado de Newline.

Tanto o índice quanto as operações de criação exigem que você especifique a fonte. A ação do índice adiciona ou executa uma substituição no índice conforme especificado. É bom observar que a operação do índice falhará se um documento com um índice semelhante já existir.

Uma operação de atualização, por outro lado, requer um documento parcial especificado.

Compreendendo o corpo de solicitação

A API em massa aceita as operações para executar no corpo. As entradas no corpo estão na forma de formato delimitado JSON.

Cada entrada em uma nova linha inclui a ação e os dados relacionados para a operação de destino.

Vamos dividir as operações que você pode especificar no corpo da solicitação e nos parâmetros aceitos:

Criar

A operação Create irá indexar um documento especificado se o documento não existir. Os parâmetros essenciais para a operação de criação incluem:

_índice - Define o nome do alias de índice ou índice sobre o qual executar a operação do índice. Este parâmetro não é opcional se você não tiver o parâmetro de destino definido no caminho da solicitação.

_eu ia - O ID do documento para indexar. Se você não tiver valor especificado, o Elasticsearch gerará o ID do documento automaticamente.

Atualizar

A operação de atualização realizará uma atualização parcial do documento. Os parâmetros obrigatórios para saber a operação de atualização incluem:

_índice - Especifica o nome das áreas de índice ou índice para realizar a operação de atualização.

_eu ia - ID do documento, gerado automaticamente se não for especificado.

Doc - Define o nome do documento parcial para indexar.

Índice

A operação de índice indexa um documento especificado. Se o documento especificado existir, a operação do índice substituirá o documento e incrementará sua versão. Os parâmetros essenciais para esta operação incluem:

_índice - Define o nome do alias de índice ou índice para indexar.

_eu ia - Id do documento.

Excluir

A operação Excluir exclui um documento do índice. Deve saber os parâmetros para esta operação incluem:

_índice - Define o nome ou alias do índice.

_eu ia - O ID do documento para remover do índice.

OBSERVAÇÃO: É bom prestar atenção à resposta da API em massa para determinar informações como operações com falha e bem -sucedidas.

Conclusão

A API em massa no Elasticsearch pode ser um economizador de tempo, tanto no número de solicitações para fazer quanto no desempenho da indexação. Este guia fornece o básico de como trabalhar com a API para executar várias operações.

Para saber mais sobre a API em massa, confira a documentação.