1234567891011121314151617181920212223242526272829303132333435 |
- [[modules-fielddata]]
- === Field data cache settings
- The field data cache contains <<fielddata-mapping-param, field data>> and <<eager-global-ordinals, global ordinals>>,
- which are both used to support aggregations on certain field types.
- Since these are on-heap data structures, it is important to monitor the cache's use.
- [discrete]
- [[fielddata-sizing]]
- ==== Cache size
- The entries in the cache are expensive to build, so the default behavior is
- to keep the cache loaded in memory. The default cache size is unlimited,
- causing the cache to grow until it reaches the limit set by the <<fielddata-circuit-breaker, field data circuit breaker>>. This behavior can be configured.
- If the cache size limit is set, the cache will begin clearing the least-recently-updated
- entries in the cache. This setting can automatically avoid the circuit breaker limit,
- at the cost of rebuilding the cache as needed.
- If the circuit breaker limit is reached, further requests that increase the cache
- size will be prevented. In this case you should manually <<indices-clearcache, clear the cache>>.
- `indices.fielddata.cache.size`::
- (<<static-cluster-setting,Static>>)
- The max size of the field data cache, eg `38%` of node heap space, or an
- absolute value, eg `12GB`. Defaults to unbounded. If you choose to set it,
- it should be smaller than <<fielddata-circuit-breaker>> limit.
- [discrete]
- [[fielddata-monitoring]]
- ==== Monitoring field data
- You can monitor memory usage for field data as well as the field data circuit
- breaker using
- the <<cluster-nodes-stats,nodes stats API>> or the <<cat-fielddata,cat fielddata API>>.
|