[[index-modules]] = Index Modules [partintro] -- Index Modules are modules created per index and control all aspects related to an index. Since those modules lifecycle are tied to an index, all the relevant modules settings can be provided when creating an index (and it is actually the recommended way to configure an index). [float] [[index-modules-settings]] == Index Settings There are specific index level settings that are not associated with any specific module. These include: [[index-compound-format]]`index.compound_format`:: experimental[] Should the compound file format be used (boolean setting). The compound format was created to reduce the number of open file handles when using file based storage. However, by default it is set to `false` as the non-compound format gives better performance. It is important that OS is configured to give Elasticsearch ``enough'' file handles. See <>. + Alternatively, `compound_format` can be set to a number between `0` and `1`, where `0` means `false`, `1` means `true` and a number inbetween represents a percentage: if the merged segment is less than this percentage of the total index, then it is written in compound format, otherwise it is written in non-compound format. [[index-compound-on-flush]]`index.compound_on_flush`:: experimental[] Should a new segment (create by indexing, not by merging) be written in compound format or non-compound format? Defaults to `true`. This is a dynamic setting. `index.refresh_interval`:: A time setting controlling how often the refresh operation will be executed. Defaults to `1s`. Can be set to `-1` in order to disable it. `index.codec`:: experimental[] The `default` value compresses stored data with LZ4 compression, but this can be set to `best_compression` for a higher compression ratio, at the expense of slower stored fields performance. `index.shard.check_on_startup`:: experimental[] Should shard consistency be checked upon opening. When corruption is detected, it will prevent the shard from being opened. + When `checksum`, check for physical corruption. When `true`, check for both physical and logical corruption. This is much more expensive in terms of CPU and memory usage. When `fix`, check for both physical and logical corruption, and segments that were reported as corrupted will be automatically removed. Default value is `false`, which performs no checks. NOTE: Checking shards may take a lot of time on large indices. WARNING: Setting `index.shard.check_on_startup` to `fix` may result in data loss, use with extreme caution. -- include::index-modules/analysis.asciidoc[] include::index-modules/allocation.asciidoc[] include::index-modules/slowlog.asciidoc[] include::index-modules/merge.asciidoc[] include::index-modules/store.asciidoc[] include::index-modules/mapper.asciidoc[] include::index-modules/translog.asciidoc[] include::index-modules/cache.asciidoc[] include::index-modules/query-cache.asciidoc[] include::index-modules/fielddata.asciidoc[] include::index-modules/similarity.asciidoc[]