Elasticsearch之Index Setting:索引的静态配置与动态配置

        索引的配置项按是否可以更改分为静态配置与动态配置,所谓的静态配置即索引创建后不能修改。

索引静态配置 【索引创建后不能修改】

  1. index.number_of_shards:索引分片的数量。在ES层面可以通过es.index.max_number_of_shards属性设置索引最大的分片数,默认为1024,index.number_of_shards的默认值为Math.min(es.index.max_number_of_shards,5),故通常默认值为5。
  2. index.shard.check_on_startup:分片在打开之前是否应该检查该分片是否损坏。当检测到损坏时,它将阻止分片被打开。可选值:false:不检测;checksum:只检查物理结构;true:检查物理和逻辑损坏,相对比较耗CPU;fix:类同与false,7.0版本后将废弃。默认值:false。
  3. index.codec:数据存储的压缩算法,默认值为LZ4,可选择值best_compression ,比LZ4可以获得更好的压缩比(即占据较小的磁盘空间,但存储性能比LZ4低)。
  4. index.routing_partition_size:路由分区数,如果设置了该参数,其路由算法为: (hash(_routing) + hash(_id) % index.routing_parttion_size ) % number_of_shards。如果该值不设置,则路由算法为 hash(_routing) % number_of_shardings,_routing默认值为_id。

索引动态配置

  1. index.number_of_replicas:索引复制分片的个数,默认值1,该值必须大于等于0,索引创建后该值可以变更。
  2. index.auto_expand_replicas:副本数是否自动扩展,可设置(e.g0-5)或(0-all)。
  3. index.refresh_interval:执行刷新操作的频率,该操作使对索引的最新更改对搜索可见。默认为1s。可以设置为-1以禁用刷新。
  4. index.max_result_window:控制分页搜索总记录数,from + size的大小不能超过该值,默认为10000。
  5. index.max_inner_result_window:从from+ size的最大值,用于控制top aggregations,默认为100。内部命中和顶部命中聚合占用堆内存,并且时间与 from + size成正比,这限制了内存。
  6. index.max_rescore_window:在rescore的搜索中,rescore请求的window_size的最大值。
  7. index.max_docvalue_fields_search:一次查询最多包含开启doc_values字段的个数,默认为100。
  8. index.max_script_fields:查询中允许的最大script_fields数量。默认为32。
  9. index.max_ngram_diff:NGramTokenizer和NGramTokenFilter的min_gram和max_gram之间允许的最大差异。默认为1。
  10. index.max_shingle_diff:对于ShingleTokenFilter, max_shingle_size和min_shingle_size之间允许的最大差异。默认为3。
  11. index.blocks.read_only:索引数据、索引元数据是否只读,如果设置为true,则不能修改索引数据,也不能修改索引元数据。
  12. index.blocks.read_only_allow_delete:与index.blocks.read_only基本类似,唯一的区别是允许删除动作。
  13. index.blocks.read:设置为true以禁用对索引数据的读取操作。
  14. index.blocks.write:设置为true以禁用对索引数据的写操作。(针对索引数据,而不是索引元数据)。
  15. index.blocks.metadata:设置为true,表示不允许对索引元数据进行读与写。
  16. index.max_refresh_listeners:索引的每个分片上当刷新索引时最大的可用监听器数量。这些侦听器用于实现refresh=wait_for。
  17. index.highlight.max_analyzed_offset:高亮显示请求分析的最大字符数。此设置仅适用于在没有偏移量或term vectors的文本字段时。默认情况下,该设置在6中未设置。x,默认值为-1。
  18. index.max_terms_count:可以在terms查询中使用的术语的最大数量。默认为65536。
  19. index.routing.allocation.enable:Allocation机制,其主要解决的是如何将索引在ES集群中在哪些节点上分配分片(例如在Node1是创建的主分片,在其他节点上创建复制分片)。
    举个例子,如果集群中新增加了一个节点,集群的节点由原来的3个变成了4
    可选值:(1).all:所有类型的分片都可以重新分配,默认。(2).primaries:只允许分配主分片。(3).new_primaries:只允许分配新创建的主分片。(4).none:所有的分片都不允许分配。
  20. index.routing.rebalance.enable:索引的分片重新平衡机制。可选值如下:(1).all:默认值,允许对所有分片进行再平衡。(2).primaries:只允许对主分片进行再平衡。(3).replicas:只允许对复制分片进行再平衡。(4).none:不允许对任何分片进行再平衡
  21. index.gc_deletes:文档删除后(删除后版本号)还可以存活的周期,默认为60s。
  22. index.max_regex_length:用于正在表达式查询(regex query)正在表达式长度,默认为1000。
  23. index.default_pipeline:默认的管道聚合器。
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值