原英文版地址: https://www.elastic.co/guide/en/elasticsearch/reference/7.7/modules-fielddata.html, 原文档版权归 www.elastic.co 所有
本地英文版地址: ../en/modules-fielddata.html

字段数据缓存设置

字段数据缓存主要在对字段进行排序或聚合计算时使用。 它将所有字段的值加载到内存中,以便提供对这些值的基于文档的快速访问。 为字段构建字段数据缓存的成本可能很高,因此建议有足够的内存来分配数据缓存,并保持其加载状态。

可以使用 indices.fielddata.cache.size 来控制用于字段数据缓存的内存使用量。 注意:重新加载不适合的字段数据到缓存中的代价是很高的,而且性能很差。 (原文: Note: reloading the field data which does not fit into your cache will be expensive and perform poorly.)

indices.fielddata.cache.size
字段数据缓存的最大值, 比如 节点堆空间的 30%,或者 一个确切的值,比如 12GB。默认为 没有限制(unbounded)。可以参考 字段数据熔断器 (field data circuit breaker)

这些是静态设置,必须在集群中的每个数据节点上进行配置。

监控字段数据 (monitoring field data)

可以使用 节点统计 API 监控字段数据 以及 字段数据熔断器的内存使用情况。