Elasticsearch Bulk Document Operations: Index, Create, Update, and Delete

Bulk Document Operations in Elasticsearch

Elasticsearch provides a bulk API that allows you to perform multiple document operations in a single request. This is particularly useful for improving performance when working with large datasets.

Index Operation

The index operation creates new documents or replaecs existing documents if they already exist.

Execute the bulk operation:

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_index.json"

The create operation only succeeds if the document does not already exist.

Execute the bulk create opeartion:

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_create.json"

The key difference between index and create operations is how they handle existing documents. Create operations will fail if a document with the same ID already exists, while index operations will overwrite existing documents.

The update operation modifies existing documents using partial document updates.

Execute the bulk update operation:

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_update.json"

Delete Operation

The delete operation removes documents from the index.

Execute the bulk delete operasion:

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_delete.json"

Tags: elasticsearch Bulk API Document Operations Index Operation Update Operation

Posted on Fri, 25 Sep 2026 16:35:18 +0000 by meigwil