1.内存优化 在bin/elasticsearch.in.sh中进行配置 修改配置项为尽量大的内存: ES_MIN_MEM=8g ES_MAX_MEM=8g 两者最好改成一样的,否则容易引发长时间GC(stop-the-world) elasticsearch默认使用的GC是CMS GC,如果你的内存大小超过6G,CMS是不给力的,容易出现stop-the-world,建议使用G1 GC JAVA_OPTS=”$JAVA_OPTS -XX:+UseParNewGC” JAVA_OPTS=”$JA…
前言 最近一年使用 Elasticsearch 完成亿级别日志搜索平台「ELK」,亿级别的分布式跟踪系统.在设计这些系统的过程中,底层都是采用 Elasticsearch 来做数据的存储,并且数据量都超过亿级别,甚至达到百亿级别. 所以趁着有空,就花点时间整理一下具体怎么做 Elasticsearch 性能优化,希望能对 Elasticsearch 感兴趣的同学有所帮助. 背景 Elasticsearch 是一个基于 Lucene 的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于…
ElasticSearch性能优化主要分为4个方面的优化. 一.服务器部署 二.服务器配置 三.数据结构优化 四.运行期优化 一.服务器部署 1.增加1-2台服务器,用于负载均衡节点 elasticSearch的配置文件中有2个参数:node.master和node.data.这两个参 数搭配使用时,能够帮助提供服务器性能. 1.1> node.master: false    node.data: true 该node服务器只作为一个数据节点,只用于存储索引数据.使该node服务器功能 单一,…
1. 概述 随着企业业务量的不断增大,业务数据随之增加,传统的基于关系型数据库的搜索已经不能满足需要. 在关系型数据库中搜索,只能支持简单的关键字搜索,做不到分词和统计的功能,而且当单表数据量到达上百万级别后,关系型数据库的查询效率就会断崖式下跌,造成用户体验下降. 这时我们就需要引入分布式搜索引擎,来支持大数据量的查询. 分布式搜索引擎的可以弥补关系型数据库的不足,首先可以支持海量数据的查询,支持分词,因为是分布式的,所以扩展方便,可轻松实现负载均衡和高可用. Elasticsearch(简称…
官方网址:https://www.elastic.co/products/elasticsearch/ 一.特性 1.支持中文分词 2.支持多种数据源的全文检索引擎 3.分布式 4.基于lucene的开源搜索引擎 5.Restful api 二.资源 smartcn, 默认的中文分词 :https://github.com/elasticsearch/elasticsearch-analysis-smartcn mmseg :https://github.com/medcl/elasticsea…
在安装插件的过程中,尤其是安装Marvel插件遇到了很多问题,要下载license.Marvel-agent,又要下载安装Kibana 版本需求 Java 7 or later Elasticsearch 2.4.2 Kibana 4.5 Elasticsearch License 2.4.2 plugin 系统版本是:CentOS release 6.6 一.简介 Marvel插件介绍 Marvel插件:在簇中从每个节点汇集数据.这个插件必须每个节点都得安装. Marvel是Elasticse…
一.搜索效率优化 批量提交 当有大量数据提交的时候,建议采用批量提交. 比如在做 ELK 过程中 ,Logstash indexer 提交数据到 Elasticsearch 中 ,batch size 就可以作为一个优化功能点.但是优化 size 大小需要根据文档大小和服务器性能而定. 像 Logstash 中提交文档大小超过 20MB ,Logstash 会请一个批量请求切分为多个批量请求. 如果在提交过程中,遇到 EsRejectedExecutionException 异常的话,则说明集群…
一.写在前面 ES(Elasticsearch下文统一称为ES)越来越多的企业在业务场景是使用ES存储自己的非结构化数据,例如电商业务实现商品站内搜索,数据指标分析,日志分析等,ES作为传统关系型数据库的补充,提供了关系型数据库不具备的一些能力. ES最先进入大众视野的是其能够实现全文搜索的能力,也是由于基于Lucene的实现,内部有一种倒排索引的数据结构. 本文作者将介绍ES的分布式架构,以及ES的存储索引机制,本文不会详细介绍ES的API,会从整体架构层面进行分析,后续作者会有其他文章对ES…
前言 由于最近在项目中接触使用到了ElasticSearch,从本篇博客开始将给大家分享这款风靡全球的产品.将涉及到ElasticSearch的安装.基础概念.基本用法.高级查询.中文分词器.与SpringBoot集成进行接口开发等相关知识. ElasticSearch简述 如果大家接触过大数据的话,相信大家或多或少的听说过ELK.ELK是目前非常主流的用于网站监控,流量监控,日志监控,集中日志管理的一套解决方案.而ElasticSearch如同ELK的心脏一般,起到一个非常核心的作用.简单来说…
ES 手册 如何提高ES的性能 不要返回较大的结果集 ES是设计成一个搜索引擎的,只擅长返回匹配查询较少文档,如果需要返回非常多的文档需要使用Scroll. 避免稀疏 因为ES是基于Lucene来索引和存储数据的,所以对稠密的数据更有效.Lucene能够有效的确定文档是通过一个整数的文档id,无论有没有数据都会话费一个字节存储id.稀疏主要影响norms和doc_values,一些可以避免稀疏的推荐: 避免将不相关的数据放到相同的索引中 规范的文档结构 使用相同的字段名来保存同样的数据. 避免类…