ElasticSearch常用优化点

  1. 关闭交换分区:因为Linux采用了三级页表虚存管理,关闭交换分区可以减少系统IO,页面换入唤出时所耗费的总线时间以及减少系统中断次数;swap的使用会显著增加延迟和降低吞吐量。
  2. 文件描述符配置:任何网络应用都需要增加文件描述符的数量,默认进程的文件描述符是1024. 我们进行网络IO,打开文件,管道,内存映射等操作都需要文件描述符资源;一般调整到65532;
  3. JVM内存设置: max(节点系统内存/2, 32G),因为JVM有一项技术叫指针压缩技术,如果地址大于4字节的,无法压缩到4字节,只能用8个字节存放地址,造成内存浪费,另外,内存越大,从概率上来讲,GC的effort越大,时间越长。另外,真正在工作的是Lucene分片,也需要给他预留足够的内存;
  4. mlock技术:用C语言写过服务的同学队mlock这个系统调用应该不会感到陌生,这个可以使得堆内存被锁定,不被MMU进行换入唤出,对高并发服务端系统这个是必须的,就像我们对于一些高并发的C语言系统,需要自己使用伙伴算法和slab/slob内存管理算法管理内存;
  5. 线程池和队列大小:ES并发处理请求的能力,根据业务自行调整,不建议非常大;
  6. 建索引:不建议大报文频繁建索引,可以把写入过程理解为一次embeding,只不过我们用的是非常简单的TF-IDF算法,分词越多,生成的倒排索引规模越大,对性能消耗越大,对于一些复杂的embeding算法,更加建议使用向量数据库。一般只对需要搜索的字段建索引,然后由上层应用去聚合输出;
  7. 根据业务优先级,紧急程度,使用队列消峰限速写入ES;
相关推荐
智慧物业老杨16 分钟前
数字底座,重构小区治理秩序
大数据
计算机编程指导师1 小时前
【计算机毕设选题推荐】基于Hadoop的宫颈癌变进程光谱数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·数据分析·spark·毕业设计·宫颈癌变
guhunyihan1 小时前
无代码系统搭建平台,探索恐象 AI 带来的开发新范式
大数据·人工智能
计算机编程指导师2 小时前
【计算机毕设选题推荐】基于Hadoop+Spark的化妆品销售大数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·化妆品
benchmark_cc2 小时前
前复权数据每天可能变化,历史数据库应该覆盖还是保留原始价格?
大数据·python·pandas·量化交易·股票数据·quantdash
计算机编程指导师2 小时前
计算机毕设选题推荐:Hadoop大数据下的个体肥胖健康风险评估与可视化系统源码 毕业设计 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·肥胖健康风险
m0_715674432 小时前
数据分类分级的范式转换:从规则匹配到场景化高准确率一键部署
大数据·网络·人工智能·网络安全
计算机编程指导师2 小时前
Python大数据毕设怎么写?Django结合Hadoop+Spark京东销售分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·spark·毕业设计·课程设计·京东商品
yichengerp3 小时前
电子行业常用erp系统有哪些?推荐适合中小电子厂的易呈erp软件,操作简单,易落地
大数据·运维·人工智能·云计算·制造
hunteritself3 小时前
10 层 4K 实时剪辑,国产工作站进入广电制作核心
大数据·前端·人工智能·深度学习·transformer