123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- [[index-modules-store]]
- == Store
- The store module allows you to control how index data is stored and accessed on disk.
- [float]
- [[file-system]]
- === File system storage types
- There are different file system implementations or _storage types_. The best
- one for the operating environment will be automatically chosen: `simplefs` on
- Windows 32bit, `niofs` on other 32bit systems and `mmapfs` on 64bit systems.
- This can be overridden for all indices by adding this to the
- `config/elasticsearch.yml` file:
- [source,yaml]
- ---------------------------------
- index.store.type: niofs
- ---------------------------------
- It is a _static_ setting that can be set on a per-index basis at index
- creation time:
- [source,js]
- ---------------------------------
- PUT /my_index
- {
- "settings": {
- "index.store.type": "niofs"
- }
- }
- ---------------------------------
- experimental[This is an expert-only setting and may be removed in the future]
- The following sections lists all the different storage types supported.
- [[simplefs]]`simplefs`::
- The Simple FS type is a straightforward implementation of file system
- storage (maps to Lucene `SimpleFsDirectory`) using a random access file.
- This implementation has poor concurrent performance (multiple threads
- will bottleneck). It is usually better to use the `niofs` when you need
- index persistence.
- [[niofs]]`niofs`::
- The NIO FS type stores the shard index on the file system (maps to
- Lucene `NIOFSDirectory`) using NIO. It allows multiple threads to read
- from the same file concurrently. It is not recommended on Windows
- because of a bug in the SUN Java implementation.
- [[mmapfs]]`mmapfs`::
- The MMap FS type stores the shard index on the file system (maps to
- Lucene `MMapDirectory`) by mapping a file into memory (mmap). Memory
- mapping uses up a portion of the virtual memory address space in your
- process equal to the size of the file being mapped. Before using this
- class, be sure you have allowed plenty of
- <<vm-max-map-count,virtual address space>>.
- [[default_fs]]`default_fs` deprecated[5.0.0, The `default_fs` store type is deprecated - use `mmapfs` instead]::
- The `default` type is a hybrid of NIO FS and MMapFS, which chooses the best
- file system for each type of file. Currently only the Lucene term dictionary,
- doc values and points files are memory mapped to reduce the impact on the
- operating system. All other files are opened using Lucene `NIOFSDirectory`.
- Address space settings (<<vm-max-map-count>>) might also apply if your term
- dictionary are large, if you index many fields that use points (numerics, dates
- and ip addresses) or if you have many fields with doc values.
|