ElasticSearch 推荐内存分配

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: ElasticSearch 推荐内存分配

内存分配


机器内存小于64GB

当机器内存小于 64G 时,遵循通用的原则,50% 给 ES,50% 留给 lucene。

因为ES不止需要内存存储,他也同样需要空余的内存来提供更加快速的查询性能,这一切都源于底层的lucene,它能够很好的利用我们操作系统的内存,其中50%就是最佳的配比。


机器内存等于64GB

最佳的配比,遵循 1 : 1 的内存进行配置。

也就是说ES配置32G,闲置空间32G (用作lucene查询).

机器内存大于64GB

如果整台机器上只部署ES,那也是非常不恰当的,

因为在Java中,所有对象都分配在堆上并由指针引用。普通的对象指针(OOP)指向这些对象,传统上它们是CPU本地字的大小:32位或64位,取决于处理器。

对于32位系统,这意味着最大堆大小为4 GB。对于64位系统,堆大小可能会变得更大,但是64位指针的开销意味着仅仅因为指针较大而存在更多的浪费空间。并且比浪费的空间更糟糕,当在主存储器和各种缓存(LLC,L1等等)之间移动值时,较大的指针消耗更多的带宽。

Java使用称为压缩oops的技巧来解决这个问题。而不是指向内存中的确切字节位置,指针引用对象偏移量。这意味着一个32位指针可以引用40亿个对象,而不是40亿个字节。最终,这意味着堆可以增长到约32 GB的物理尺寸,同时仍然使用32位指针。

一旦你穿越了这个神奇的〜32 GB的边界,指针就会切换回普通的对象指针。每个指针的大小增加,使用更多的CPU内存带宽,并且实际上会丢失内存。实际上,在使用压缩oops获得32 GB以下堆的相同有效内存之前,需要大约40-50 GB的分配堆。

以上小结为:即使你有足够的内存空间,尽量避免跨越32GB的堆边界。

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
11月前
|
缓存 Prometheus 监控
Elasticsearch集群JVM调优设置合适的堆内存大小
Elasticsearch集群JVM调优设置合适的堆内存大小
1792 1
|
11月前
|
存储 缓存 监控
Elasticsearch集群JVM调优堆外内存
Elasticsearch集群JVM调优堆外内存
201 1
|
存储 缓存 监控
深入解析Elasticsearch的内存架构与管理
深入解析Elasticsearch的内存架构与管理
深入解析Elasticsearch的内存架构与管理
|
存储 缓存 数据处理
ELK中 Elasticsearch和Logstash内存大小设置的考虑
ELK中 Elasticsearch和Logstash内存大小设置的考虑
635 0
|
监控 数据可视化 Java
Elasticsearch JVM 堆内存使用率飙升,怎么办?
Elasticsearch JVM 堆内存使用率飙升,怎么办?
|
存储 缓存 JSON
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(上)
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(上)
690 0
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(上)
|
缓存 监控 Java
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(中)
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(中)
631 0
带你读《Elastic Stack 实战手册》之84:——4.3.3.Elasticsearch 性能优化之内存和熔断浅析(中)
|
缓存 自然语言处理 安全
白话Elasticsearch67-不随意调节jvm和thread pool的原因&jvm和服务器内存分配的最佳实践
白话Elasticsearch67-不随意调节jvm和thread pool的原因&jvm和服务器内存分配的最佳实践
316 0
|
缓存 自然语言处理 监控
白话Elasticsearch52-深入聚合数据分析之fielddata内存控制、circuit breaker短路器、fielddata filter、预加载机制以及序号标记预加载
白话Elasticsearch52-深入聚合数据分析之fielddata内存控制、circuit breaker短路器、fielddata filter、预加载机制以及序号标记预加载
210 0
|
算法 数据挖掘 索引
白话Elasticsearch47-深入聚合数据分析之Cardinality Aggs-cardinality算法之优化内存开销以及HLL算法
白话Elasticsearch47-深入聚合数据分析之Cardinality Aggs-cardinality算法之优化内存开销以及HLL算法
258 0

热门文章

最新文章