tencent cloud

Elasticsearch Service

新手指引
动态与公告
产品动态
产品公告
安全公告
产品简介
产品概述
Elasticsearch 版本支持说明
产品功能
高级特性(X-Pack)
产品优势
应用场景
能力与限制说明
相关概念
购买指南
计费概述
产品定价
ES Serverless 服务定价
欠费说明
ES 内核增强
内核版本发布记录
定向路由优化
压缩算法优化
FST Off Heap 内存优化
快速入门
集群规格和容量配置评估
创建集群
访问集群
ES Serverless 服务指南
服务概述
基本概念
5分钟快速体验
快速使用
访问控制
数据写入
数据查询
索引管理
告警管理
ES API 参考
相关问题
数据应用指南
数据应用概述
数据管理
ES 集群指南
集群管理
访问控制
集群多可用区部署
集群扩缩容
集群配置
插件配置
监控与告警
日志查询
数据备份
升级
实践教程
数据迁移和同步
应用场景构建
索引设置
SQL 支持
企业微信机器人接收 Watcher 告警
API 文档
History
Introduction
API Category
Instance APIs
Making API Requests
Data Types
Error Codes
常见问题
产品相关问题
ES 集群
词汇表
新版介绍
Elasticsearch Service 2020.07新版
Elasticsearch Service 2020.2新版
Elasticsearch Service 2019.12新版

FST Off Heap 内存优化

PDF
聚焦模式
字号
最后更新时间: 2021-05-18 16:02:49

背景

ES 单节点上,倒排索引中的 FST 结构默认常驻堆内内存,占比较高,尤其是在大磁盘的冷节点上,占比可达50%+,制约了单节点管理磁盘的能力,堆内内存受限,影响节点可用性。而在冷节点上,查询请求非常少,FST 常驻内存意义不大,因此我们需要将该部分数据结构移动到堆外管理,默认不加载,需要时从磁盘加载到堆外直接使用,以降低堆内内存使用量,提升单节点磁盘管理能力。

优化方案

基于 WLFU 淘汰策略,实现精准控制的堆外 cache,堆内基于零拷贝、弱引用实现第二级 cache,性能和堆内访问基本持平。

使用方式

开启、关闭 Off Heap 功能(默认关闭)

curl -H "Content-Type:application/json" -XPUT http://localhost:9200/_cluster/settings -d '{
"persistent" : {
"indices.segment_memory.off_heap.enable" : true
}
}'

调整 Off Heap Cache 大小(默认500MB)

curl -H "Content-Type:application/json" -XPUT http://localhost:9210/_cluster/settings -d '{
"persistent" : {
"indices.segment_memory.off_heap.size" : "5gb"
}
}'
可以设置为单节点堆外内存的1/3,最大不要超过32GB。具体示例如下:
单节点总内存(包括 jvm 和堆外内存)共64GB,可以设置为(64 - 32)/3 = 10GB。
单节点总内存(包括 jvm 和堆外内存)共96GB,可以设置为(96 - 32)/3 = 20GB。

优化效果

内存开销、数据管理能力、GC 优势明显,性能持平略有优势。
方案对比
FST 存放位置
FST 内存占用量
单个 FST 堆内存占用量
单节点最大磁盘数据量
原生方案
堆内内存
全量存储在内存中,内存占用量大
MB 级别(源生 FST 数据结构)
10TB(需调优)
优化方案
堆外内存
Cache LRU 淘汰冷数据 内存占用量小
100Byte左右(Cache Key 大小)
50TB
写入性能对比
内存使用量(MB)
GC 时长(s)
TPS
90%时延(ms)
99%时延(ms)
原生方案
402.59
20.453
198051
463.201
617.701
优化方案
102.217
18.969
201188
455.124
618.379
Diff
优74.6%
优7.26%
优1.58%
优1.74%
劣0.11%
查询性能对比
内存使用量(MB)
GC 时长(s)
QPS
90%时延(ms)
99%时延(ms)
原生方案
401.806
20.107
200.057
3.96062
11.1894
优化方案
101.004
19.228
200.087
3.87805
11.2316
Diff
优74.9%
优4.37%
-
优2.00%
劣0.38%

支持版本

6.8.2、7.5.1、7.10.1

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈