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.