Indices

edit

The indices module allow to control settings that are globally managed for all indices.

Indexing Buffer

edit

The indexing buffer setting allows to control how much memory will be allocated for the indexing process. It is a global setting that bubbles down to all the different shards allocated on a specific node.

The indices.memory.index_buffer_size accepts either a percentage or a byte size value. It defaults to 10%, meaning that 10% of the total memory allocated to a node will be used as the indexing buffer size. This amount is then divided between all the different shards. Also, if percentage is used, it is possible to set min_index_buffer_size (defaults to 48mb) and max_index_buffer_size (defaults to unbounded).

The indices.memory.min_shard_index_buffer_size allows to set a hard lower limit for the memory allocated per shard for its own indexing buffer. It defaults to 4mb.

TTL interval

edit

You can dynamically set the indices.ttl.interval, which allows to set how often expired documents will be automatically deleted. The default value is 60s.

The deletion orders are processed by bulk. You can set indices.ttl.bulk_size to fit your needs. The default value is 10000.

See also _ttl.

Recovery

edit

The following settings can be set to manage the recovery policy:

indices.recovery.concurrent_streams

defaults to 3.

indices.recovery.concurrent_small_file_streams

defaults to 2.

indices.recovery.file_chunk_size

defaults to 512kb.

indices.recovery.translog_ops

defaults to 1000.

indices.recovery.translog_size

defaults to 512kb.

indices.recovery.compress

defaults to true.

indices.recovery.max_bytes_per_sec

defaults to 40mb.

Store level throttling

edit

The following settings can be set to control the store throttling:

indices.store.throttle.type

could be merge (default), none or all. See Store.

indices.store.throttle.max_bytes_per_sec

defaults to 20mb.