索引模块是按索引建立的模块,控制与索引相关的全部方面。正则表达式
能够按索引设置索引级别,设置多是:缓存
静态安全
动态性能
update-index-settings
API在活动索引上更改它们。更改关闭的索引上的静态或动态索引设置可能致使不正确的设置,在不删除和从新建立索引的状况下,不可能纠正这些设置。
下面是与任何特定索引模块无关的全部静态索引设置的列表:优化
index.number_of_shards日志
1
。此设置只能在建立索引时设置,它不能在关闭的索引上更改,注意:每一个索引的碎片数量限制为1024
个,这种限制是一种安全限制,以防止意外地建立可能因为资源分配而破坏集群稳定的索引。能够在集群的每一个节点上经过指定系统变量export ES_JAVA_OPTS="-Des.index.max_number_of_shards=128"
来修改该限制。index.shard.check_on_startupcode
index.codec索引
best_compression
,它使用DEFLATE得到更高的压缩比,代价是下降存储字段的性能。若是你正在更新压缩类型,则新的压缩类型将在段合并后应用,段合并能够使用强制合并来强制执行。index.routing_partition_sizetoken
1
,只能在建立索引时设置,这个值必须小于index.number_of_shards
,除非index.number_of_shards
值也是1
。index.load_fixed_bitset_filters_eagerly生命周期
true
(默认值)和false
。如下是与任何特定索引模块无关的全部动态索引设置列表:
index.number_of_replicas
1
。index.auto_expand_replicas
0-5
),或将all
用于上界(例如0-all
),默认为false
(即禁用)。注意,自动扩展的副本数量没有考虑任何其余分配规则,好比碎片分配感知、过滤或每一个节点的总碎片,若是适用的规则阻止分配全部副本,则可能致使集群健康状态变为黄色。index.search.idle.after
30s
)。index.refresh_interval
1s
,能够设置为-1
以禁用刷新。若是没有显式设置此设置,至少在index.search.idle.after
秒内没有看到搜索流量的碎片在收到搜索请求以前不会收到后台刷新,当刷新挂起时,搜索到空闲碎片,将等待下一次后台刷新(在1秒内)。此行为的目的是在不执行搜索的默认状况下自动优化批量索引,为了不这种行为,应该将显式值1s
设置为刷新间隔。index.max_result_window
from + size
的最大值,默认为10000
,搜索请求占用的堆内存和时间与from + size
成正比,这限制了内存。index.max_inner_result_window
from + size
的最大值,用于将内部命中定义和顶部命中聚合到此索引,默认为100
,内部命中和顶部命中聚合占用堆内存,而且时间与from + size
成正比,这限制了内存。index.max_rescore_window
rescore
请求的window_size
的最大值,默认为index.max_result_window
,其默认值为10000
,搜索请求占用堆内存,时间与max(window_size, from + size)
成正比,这限制了内存。index.max_docvalue_fields_search
docvalue_fields
的最大数量,默认为100
,Doc-value字段代价高昂,由于它们可能致使每一个字段每一个文档的搜索。index.max_script_fields
script_fields
数量,默认为32
。index.max_ngram_diff
1
。index.max_shingle_diff
3
。index.blocks.read_only
true
使索引和索引元数据只读,设置为false
容许写入和元数据更改。index.blocks.read_only_allow_delete
index.blocks.read_only
相同,可是容许删除索引来释放资源。index.blocks.read
true
以禁用对索引的读取操做。index.blocks.write
true
可禁用对索引的数据写操做,与read_only
不一样,此设置不影响元数据,例如,能够用write
块关闭索引,但不能用read_only
块关闭索引。index.blocks.metadata
true
可禁用索引元数据的读写。index.max_refresh_listeners
refresh=wait_for
。index.analyze.max_token_count
_analyze
API能够生成的最大令牌数量,默认为10000
。index.highlight.max_analyzed_offset
1000000
。index.max_terms_count
65536
。index.max_regex_length
1000
。index.routing.allocation.enable
控制此索引的碎片分配,它能够被设置为:
all
(默认值)— 容许为全部碎片分配碎片。primaries
— 只容许为主碎片分配碎片。new_primary
— 只容许为新建立的主碎片分配碎片。none
— 不容许碎片分配。index.routing.rebalance.enable
启用此索引的碎片从新平衡,它能够被设置为:
all
(默认值)—容许对全部碎片进行碎片再平衡。primaries
— 只容许对主碎片进行碎片再平衡。replicas
— 只容许对复制碎片进行碎片再平衡。none
— 不容许再平衡碎片。index.gc_deletes
60s
。index.default_pipeline
pipeline
参数重写默认值,特殊管道名称_none
表示不该该运行摄取管道。其余索引设置在索引模块中可用:
分析
索引碎片分配
映射
合并
类似性
慢日志
存储
事务日志
索引生命周期管理