ElasticSearch之Merge
Elasticsearch
的shard
,即对应Lucene
的index
。
Lucene
的index
由多个segment
组成。
segment
是index
保存数据的最小单位,不支持修改。
Elasticsearch
在运行过程中,启动后台任务,周期性检测并将占用空间小的segment
自动合并至大一些的segment
,避免存在过多的segment
对象,同时在合并过程中,会剔除掉已删除的记录。
合并操作的过程可能消耗较多的资源,比如CPU和I/O,因此在合并操作运行的过程中,Elasticsearch
会自动调整合并操作的吞吐量,优先保证其它业务的正常运行。
Elasticsearch
提供了ConcurrentMergeScheduler
作为合并操作的调度器,管理合并操作的产生和运行。
ConcurrentMergeScheduler
在新的线程中提交合并操作,同时控制合并操作的并发数。当合并操作占用的线程的数量达到index.merge.scheduler.max_thread_count
,ConcurrentMergeScheduler
将后续待执行的合并操作放至队列中,避免合并操作占用过多的资源,影响其它操作。
相关参数
index.merge.scheduler.max_thread_count
在一个shard上执行merge操作时允许使用的线程的数量。
默认值为Math.max(1, Math.min(4, node.processors / 2))
。
修改参数的取值,执行命令如下:
curl -X PUT "https://localhost:9200/_settings?pretty" -H 'Content-Type: application/json' -d'
{
"index.merge.scheduler.max_thread_count": 2
}
' --cacert $ES_HOME/config/certs/http_ca.crt -u "elastic:ohCxPH=QBE+s5=*lo7F9"
假如当前没有创建index
,则报错信息如下:
{
"error" : {
"root_cause" : [
{
"type" : "index_not_found_exception",
"reason" : "no such index [[]]",
"index_uuid" : "_na_",
"index" : "[]"
}
],
"type" : "index_not_found_exception",
"reason" : "no such index [[]]",
"index_uuid" : "_na_",
"index" : "[]"
},
"status" : 404
}
假如当前已有创建好的index
,执行结果的样例,如下:
{
"acknowledged" : true
}
相关资料
ElasticSearch之Merge的更多相关文章
- elasticsearch index 之merge
merge是lucene的底层机制,merge过程会将index中的segment进行合并,生成更大的segment,提高搜索效率.segment是lucene索引的一种存储结构,每个segment都 ...
- 段合并 segments merge 被删除的文档的删除时间
2.5 段合并 每个索引分为多个“写一次,读多次”的段 write once and read many times segments 建立索引时,一个段写入磁盘以后就不能更新:被删除的文档的信息存 ...
- 记一次Elasticsearch OOM的优化过程——基于segments force merge 和 store type 转为 niofs
首选,说明笔者的机器环境(不结合环境谈解决方案都是耍流氓): cpu 32核,内存128G,非固态硬盘: RAID0 (4T * 6),单节点,数据量在700G到1800G,索引15亿~21亿.敖丙大 ...
- Elasticsearch Java 虚拟机配置详解
Elasticsearch对Java虚拟机进行了预先的配置.通常情况下,因为这些配置的选择还是很谨慎的,所以你不需要太关心,并且你能立刻使用ElasticSearch. 但是,当你监视ElasticS ...
- ElasticSearch详解与优化设计
简介 概念 安装部署 ES安装 数据索引 索引优化 内存优化 1简介 ElasticSearch(简称ES)是一个分布式.Restful的搜索及分析服务器,设计用于分布式计算:能够达到实时搜索,稳定, ...
- Elasticsearch 的坑爹事——记录一次mapping field修改过程
Elasticsearch 的坑爹事 本文记录一次Elasticsearch mapping field修改过程 团队使用Elasticsearch做日志的分类检索分析服务,使用了类似如下的_mapp ...
- elasticsearch运维实战之2 - 系统性能调优
elasticsearch性能调优 集群规划 独立的master节点,不存储数据, 数量不少于2 数据节点(Data Node) 查询节点(Query Node),起到负载均衡的作用 Linux系统参 ...
- (转)ElasticSearch学习
ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进行数据索引 ...
- ElasticSearch已经配置好ik分词和mmseg分词(转)
ElasticSearch是一个基于Lucene构建的开源,分布式,RESTful搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便.支持通过HTTP使用JSON进行数据索引 ...
- elasticsearch基础
elastic使用lucene建立索引的步骤中,需要文件系统缓存需要同步到磁盘上.(多个segment->commit文件来维护) 当建立历史数据时,并不要求太高的实时性时,可以减小(默认1s) ...
随机推荐
- 【知识杂谈#1】Linux如何安装net-tools和sbin配置PATH
1. Linux下载net-tools 在Linux上下载net-tools包的方法可能会因你所使用的Linux发行版而有所不同.在某些现代的Linux发行版中,net-tools已经被弃用,而推荐使 ...
- nfls10.1
T1 大水题,用位运算更加便捷求解. T2 看出来有环了,但是没往基环树上想,寄. 暴力分,有部分分是基础树,可以跑一遍深搜,根节点的选择是 k 种颜色,剩下的是 k - 1 种颜色.还有暴力是可以二 ...
- jmeter生成HTML性能测试报告(非GUI的命令)
非GUI的命令(在cmd执行即可 不需要打开jmeter) 使用命令:jmeter -n -t [jmx file] -l [jtl file] -e -o [report path ...
- 题解 hdu 1269 迷宫城堡
找点图论练习题写,发现hdu又寄了,那就发到blog里吧. 思路:tarjan缩点判断DAG中点数是否为1.若是,则该图为强连通图. //produced by miya555 //stupid mi ...
- Arrays.asList()把数组转换成集合时,不能使用其修改集合相关的方法
Arrays.asList()把数组转换成集合时,不能使用其修改集合相关的方法,此处测试代码如下,这里使用add方法: 1 public class main { 2 public static vo ...
- 8.13 分治&二分&倍增&快速幂模拟赛总结
今天太悲惨了qaq 考试概况: 总之疯狂挂分((( 根据题目说的四个算法,猜想每个算法按顺序对应一道题. \(T1\) 看起来不难,数据范围小,感觉应该就是把地图拆成四块来递归计算答案,不过分类讨论属 ...
- 一文搞懂深度信念网络!DBN概念介绍与Pytorch实战
本文深入探讨了深度信念网络DBN的核心概念.结构.Pytorch实战,分析其在深度学习网络中的定位.潜力与应用场景. 关注TechLead,分享AI与云服务技术的全维度知识.作者拥有10+年互联网服务 ...
- could not chdir to home directory /home/user:permission denied /bin/bash:Permiss 的原因和解决方法
今天在vm上登录一个user 的时候,发现正确输入用户名和密码后弹出了这样的信息,登陆不上. 发现给出的信息中,permission denied 而 bin permiss; 这种情况表明自己给该用 ...
- 设置Eclipse自动补全变量名
具体配置步骤如下: Windows -> Preferences -> Java -> Editor -> Content Assist 选中 Enable auto-acti ...
- 基于亚博k210+arduino 智能垃圾桶(23工训赛)
#2023 10 15 派大星改 # object classifier boot.py # generated by maixhub.com from fpioa_manager import * ...