ElasticSearch之Index modules
索引的参数,分为两类:
- 静态参数,仅支持在创建索引时指定,或者关闭索引后指定。
- 动态参数,允许在索引工作期间指定或者修改。
静态参数
index.number_of_shards
默认值为1。
本参数用于控制主分片的数量,仅支持在创建时指定,对于已关闭的索引,修改本参数不会生效。
es.index.max_number_of_shards
默认情况下,每个索引可以使用的分片的数量最大为1024。
启动Elasticsearch进程时,可以在命令行中修改参数值,命令样例,如下:
export ES_JAVA_OPTS="-Des.index.max_number_of_shards=128"
./bin/elasticsearch
index.number_of_routing_shards
拆分索引的路由分片数量,和索引主分片index.number_of_shards的取值相关。
默认值位于2~1024之间。
index.codec
可选值为:
default,默认选项,使用LZ4算法对保存到盘上的数据执行压缩操作。best_compression,使用DEFLATE算法对保存到盘上的数据执行压缩操作。
变更index.codec的取值后,对后续的segment合并操作生效,可以使用Force merge API强制触发合并操作。
index.routing_partition_size
仅允许在创建索引时指定,索引创建成功后,不支持修改。
默认值为1,参数值需要小于index.number_of_shards。
index.soft_deletes.enabled
默认值为true。
指示软件删除是否启用,仅在创建索引时允许指定。
可选项,如下:
true,默认值,支持软删除。false,关闭软删除。
index.soft_deletes.retention_lease.period
默认值为12h。
软删除的数据记录保持在shard中的时长。
index.load_fixed_bitset_filters_eagerly
默认值为true。
可选项,如下:
true,默认值,启用预加载。false,关闭预加载。
index.shard.check_on_startup
仅限专家使用,在调测问题时,在shard启动过程中增加一些重型的检查操作。
建议完成问题处理后,及时关闭本选项。
可选项,如下:
false,默认值,不启用额外的检查。checksum,计算shard关联的所有文件的校验和,校验一致性,评估数据是否存在物理上的损坏。true,执行checksum选项关联的检查操作,同时校验数据的逻辑上可能存在的损坏。
动态参数
index.number_of_replicas
默认值为1。
索引的副本数量。
index.auto_expand_replicas
默认值为false。
依据集群中节点的数量,自动扩展索引的副本的数量。
可选项,如下:
false,默认行为,即不自动扩展副本的数量。- 区间,比如
0-5,或者0-all。
index.search.idle.after
默认值为30s。
shard的状态为空闲时,才能接收并处理检索请求。
本参数指定了等待shard进入空闲状态的时长。
index.refresh_interval
默认值为1s。
对索引的变更,只有执行刷新操作之后,才能被外部检索到。
本参数指定了后台执行的刷新操作的定时任务运行的时间间隔。
可选项,如下:
1s,默认值。-1s,禁用后台的刷新操作。
当本参数没有显式指定时,有如下行为:
- 处于空闲状态的
shard不会响应刷新操作。 - 当处于空闲状态的
shard收到查询请求时,主动触发一次刷新操作,然后再执行查询操作。
index.max_result_window
默认值为10000。
使用from + size方式检索数据时,本参数用于控制返回结果的记录的数量。
检索操作占用的JVM堆内存和消耗的时间,和from + size的值正相关,使用本参数可有效控制前述资源的占用量。
假如需要获取更多的检索结果,需要考虑使用scroll或者search-after。
index.max_inner_result_window
默认值为100。
使用from + size方式检索数据时,本参数用于限制检索操作占用的JVM堆内存和消耗的时间。
index.max_rescore_window
检索请求参数中window_size字段取值的上限,默认值与index.max_result_window的取值相同。
本参数用于限制检索操作占用的JVM堆内存和消耗的时间。
index.max_docvalue_fields_search
默认值为100。
在查询请求中,docvalue_field个数的上限。
index.max_script_fields
默认值为32。
在查询请求中,script_field个数的上限。
index.max_ngram_diff
默认值为1。
对于NGramTokenizer和NGramTokenFilter,min_gram和max_gram之间差值的最大值。
index.max_shingle_diff
默认值为3。
max_shingle_size和min_shingle_size之间差值的最大值。
index.max_refresh_listeners
在索引的每个shard上允许指定的listener数量的上限。
index.analyze.max_token_count
默认值为10000。
使用_analyzeAPI时支持的Token的最大数量。
index.highlight.max_analyzed_offset
默认值为1000000。
在highlight request时允许被分析的字符的最大数量。
index.max_terms_count
默认值为65536。
使用Terms Query时,允许使用的条件的最大数量。
index.max_regex_length
默认值为1000。
使用Regexp Query时,允许使用的正则表达式的最大长度。
index.query.default_field
控制如下类型的查询操作允许生效的字段。
index.routing.allocation.enable
指示是否启用shard的分配能力。
可选值,如下:
all,默认值,全部shard支持分配。primaries,主shard支持分配。new_primaries,仅有新创建的shard支持分配。none,所有shard禁止分配。
index.routing.rebalance.enable
指示是否启用shard的再平衡能力。
可选值,如下:
all,默认值,全部shard启用再平衡能力。primaries,只针对主shard启用再平衡能力。replicas,只针对副本的shard启用再平衡能力。none,关闭shard的再平衡能力。
index.gc_deletes
被删除的数据记录,其版本号仍然可用的时长。
默认值为60s。
index.default_pipeline
默认的ingest pipeline对象。
_none是特殊的pipeline对象,表示空的pipeline对象。
index.final_pipeline
最后的ingest pipeline对象。
在request pipeline和default pipeline之后运行,本参数指定的pipeline必须可用,否则将导致索引相关的操作失败。
_none是特殊的pipeline对象,表示空的pipeline对象。
index.hidden
使用模糊匹配时,是否隐藏本索引对象的相关信息。
可选值,如下:
true,即开启模糊匹配时,本索引被隐藏。false,默认值,即开启模糊匹配时,允许本索引被匹配到,并返回相关信息。
相关资料
- Index modules
- Open index API
- Update index settings API
- Force merge API
- _routing field
- Delete API
- Index API
- Query and filter context
- DEFLATE
- Split index API
- Breaking changes in 7.0
- Term-level queries
- ?refresh
- Shingle token filter
- Indexing pressure
- 3、Elasticsearch cluster, node, index, document, shards 及 replica概念
- Elasticsearch创建一个索引怎么也这么复杂
- index 配置
- elasticsearch详细使用教程
- Elasticsearch-索引(Index)
- Elasticsearch7——索引模块
- Elasticsearch Index模块
- ES7.5 下动态扩大索引的shard数量
ElasticSearch之Index modules的更多相关文章
- elasticsearch文档-modules
elasticsearch文档-modules modules 模块 cluster 原文 基本概念 cluster: 集群,一个集群通常由很多节点(node)组成 node: 节点,比如集群中的每台 ...
- 使用curator 来管理elasticsearch的index
这里我们参考官网安装curator https://www.cookiesinn.org/elasticsearch_curator_delete_indices/ https://www.elast ...
- ES 08 - 创建、查看、修改、删除、关闭Elasticsearch的index
目录 1 创建index(配置mapping[映射]) 2 查看index 3 修改index 4 删除index 5 打开/关闭index 6 常见问题及解决方法 index相当于RDBMS(关系型 ...
- elasticsearch 处理index 一直INITIALIZING状态
elasticsearch一个节点异常重启后有一个index恢复的过程中状态一直INITIALIZING 处理方法 PUT index_name/_settings { "index&quo ...
- Elasticsearch:Index生命周期管理入门
如果您要处理时间序列数据,则不想将所有内容连续转储到单个索引中. 取而代之的是,您可以定期将数据滚动到新索引,以防止数据过大而又缓慢又昂贵. 随着索引的老化和查询频率的降低,您可能会将其转移到价格较低 ...
- Elasticsearch:Index alias
现在让我们来谈谈Elasticsearch最简单和最有用的功能之一:别名 (alias).为了区分这里alias和文章"Elasticsearch : alias数据类型",这里的 ...
- Elasticsearch查询Index以及删除
查询Index信息 GET /bank HTTP/1.1Host: localhost:9200 { "bank": { "aliases": {}, &quo ...
- 定期删除elasticsearch 的index 索引
#!/bin/bashfind /data/elasticsearch/data/pro-kz-log/nodes/0/indices/ -type d -mtime +7 | awk -F" ...
- 定时删除elasticsearch的index
#!/bin/bashfind /data/elasticsearch/data/kz-log/nodes/0/indices/ -type d -mtime +5 | awk -F"/& ...
- elasticsearch index tuning
一.扩容 tag_server当前使用ElasticSearch版本为5.6,此版本单个index的分片是固定的,一旦创建后不能更改. 1.扩容方法1,不适 ES6.1支持split index功能, ...
随机推荐
- glog 日志库简介与测试【GO 常用的库】
〇.前言 golang/glog 是 C++ 版本 google/glog 的 Go 版本实现,基本实现了原生 glog 的日志格式. 在 Kuberntes 中,glog 是默认日志库.因此需要详细 ...
- 在微服务环境下,远程调用feign和异步线程存在请求数据丢失问题
一.无异步线程得情况下feign远程调用: 0.登录拦截器: @Component public class LoginUserInterceptor implements HandlerInterc ...
- zabbix 警报推送至企业微信(图文版)
新增Python脚本 # encoding: utf-8 import sys import requests import json import os import time import re ...
- 贝塞尔曲线的切线及其AABB问题
贝塞尔曲线的切线及其AABB问题 先聊点别的 2023 年抖音上居然还看到很多前端培训 各种直播前端教学(虽然是录播)但看起来还是有大批前往前端卷啊 说明了什么,很可能说明其它行业更难卷 这不是行业不 ...
- 深入解析 C++ 中的 ostringstream、istringstream 和 stringstream 用法
引言: 在 C++ 中,ostringstream.istringstream 和 stringstream 是三个非常有用的字符串流类,它们允许我们以流的方式处理字符串数据.本文将深入探讨这三个类的 ...
- 使用 Helm 管理应用的一些 Tips
背景 Helm 是一个 Kubernetes 的包管理工具,有点类似于 Mac 上的 brew,Python 中的 PIP:可以很方便的帮我们直接在 kubernetes 中安装某个应用. 比如我们可 ...
- Go 函数的健壮性、panic异常处理、defer 机制
Go 函数的健壮性.panic异常处理.defer 机制 目录 Go 函数的健壮性.panic异常处理.defer 机制 一.函数健壮性的"三不要"原则 1.1 原则一:不要相信任 ...
- 深入理解 Python 虚拟机:进程、线程和协程
深入理解 Python 虚拟机:进程.线程和协程 在本篇文章当中深入分析在 Python 当中 进程.线程和协程的区别,这三个概念会让人非常迷惑.如果没有深入了解这三者的实现原理,只是看一些文字说明, ...
- c#使用正则表达式匹配提取日期
string target_p ="2021/09/18"; string target_q ="2021-09-18"; 格式yyyy/MM/dd: Matc ...
- KingabseES例程-事实数据与规则的匹配校验
KingabseES例程-事实数据与规则的匹配校验 背景 使用规则,对数据进行校验,比如电商的用户购物订单,是否合法.这就需要订单的多维度,如 用户.地区.物流.支付手段.供应商 等各类信息,进行动态 ...