
Elasticsearch Load
CertifiedBulk load from Kestra storage
Elasticsearch Load
Bulk load from Kestra storage
Reads ION-serialized records from a Kestra internal storage file and indexes them in bulk. Uses the parent chunk size; set removeIdKey to keep or drop the id field after use.
type: io.kestra.plugin.elasticsearch.LoadExamples
id: elasticsearch_load
namespace: company.team
inputs:
- id: file
type: FILE
tasks:
- id: load
type: io.kestra.plugin.elasticsearch.Load
connection:
hosts:
- "http://localhost:9200"
from: "{{ inputs.file }}"
index: "my_index"
Properties
connection *RequiredNon-dynamic
Elasticsearch connection
Connection settings shared by tasks; hosts are required.
from *Requiredstring
Source file
Kestra internal storage URI containing bulk payload; supports dynamic rendering.
Pebble expression referencing an Internal Storage URI e.g. {{ outputs.mytask.uri }}.
index *Requiredstring
The Elasticsearch index
chunk integerstring
1000Bulk chunk size
Number of operations per bulk request; default 1000.
idKey string
Field used as document id
Name of the field to use as _id; required when assigning ids from input rows.
opType string
INDEXCREATEUPDATEDELETEOperation type
Intended bulk op type; currently only index is applied.
removeIdKey booleanstring
trueRemove id field from document
When true (default), drops the idKey field from the indexed document body.
routing string
Custom shard routing
Optional routing key hashed to pick the shard instead of using the document id.
Outputs
size integer
Indexed document count
Total operations sent across all bulk requests.
Metrics
records counter
recordsNumber of records loaded
requests.count counter
Number of bulk requests sent
requests.duration timer
Duration of bulk requests