• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >数据库其它 > elasticsearch基本参数配置

elasticsearch基本参数配置

作者:zyc920716的博客 字体:[增加 减小] 来源:互联网 时间:2017-08-07

zyc920716的博客通过本文主要向大家介绍了elasticsearch,优化等相关知识,希望本文的分享对您有所帮助

 

1、 JVM参数配置

配置合理的jvm参数,能够避免OOM(OutOfMemory),提高系统响应时间(减小GC停顿)。

1.1、 heap-size

-Xms32G -Xms32G

官方建议设置heap大小为操作系统的一半且最大不超过32G。

1)Lucene的设计目的是把底层OS里的数据缓存到内存中。Lucene的段是分别存储到单个文件中的,这些文件都是不会变化的,所以很利于缓存,同时操作系统也会把这些段文件缓存起来,以便更快的访问。把50%的内存留给Lucene能够有效的提高系统性能

2)当heap超过32G JVM的指针压缩技术就会失效,会带来额外的资源消耗。建议最大heap不超过32G

3)-Xmx、-Xms参数设置一致,为了能够在java垃圾回收机制清理完堆区后不需要重新分隔计算堆区的大小而浪费资源,可以减轻伸缩堆大小带来的压力。

 

参考文档请移步

https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html

 

1.2、 gc-log

-XX:+HeapDumpOnOutOfMemoryError

-XX:+PrintGCDetails

-XX:+PrintGCTimeStamps

-XX:+PrintGCDateStamps

-Xloggc:${loggc}

开启GC日志,方便线上出问题进行排查。

2、 分片(shards)设置

合理的设置分片数量使一个索引更均匀的分配在不同节点上,充分利用集群的计算能力,能够大大提高集群性能。

官方建议一个Node中一个索引最好不要多于三个shards。系统默认分片数量为5个,具体设置为多少要集群配置而定,设置分片数和集群节点数相等即可。

 

PS:分片数在创建索引时指定,已经设置不可更改。

 

3、 副本(replica)设置

副本有两个作用:

1.保证数据的可靠性,如果有节点数据丢失能够通过副本恢复。

2.提高系统查询性能,参与查询提高查询性能。

一般副本设置为3。

4、 禁止swapping

 

内存交换是把内存中的数据暂时缓存到磁盘上,磁盘的读写性能要比内存慢很多。Lucene的设计目的是把底层OS里的数据缓存到内存中,如果启用内存交换会大大降低系统的性能。

1. 修改swapping参数,内存不够用时才进行swapping(vm.swappiness= 1)。

2.锁定内存,不让JVM写入swapping,避免降低ES的性能(bootstrap.mlockall: true)。

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • elasticsearch基本参数配置

相关文章

  • 2017-08-22Mybatis延迟加载
  • 2017-05-11深入SQL中PIVOT 行列转换详解
  • 2017-05-11关于ADOX的相关知识
  • 2017-05-11Hadoop2.X/YARN环境搭建--CentOS7.0 JDK配置
  • 2017-09-08使用.pgpass密码文件,通过psql登录greenplum
  • 2017-05-11sqlserver、Mysql、Oracle三种数据库的优缺点总结
  • 2017-05-11一个提升PostgreSQL性能的小技巧
  • 2017-12-08数据库索引解析
  • 2017-05-11数据库触发器(Trigger)的一点使用心得
  • 2017-05-11修改插入时间不匹配问题

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • telnet连接操作memcache服务器详解
    • 关于若干数据库数据插入性能的对比分析
    • where 子句的执行顺序
    • SQL中代替Like语句的另一种写法
    • Access数据库升级为SQL数据库的注意事项和方法
    • Mybatis查询延迟加载详解及实例
    • SequoiaDB巨杉数据库领跑性能测试,性能超越MongoDB、Cassandra
    • 使用.pgpass密码文件,通过psql登录greenplum
    • sqlserver中drop、truncate和delete语句的用法
    • 数据库安装包和升级包脚本工具RedGate使用介绍

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有