基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
tenant_memstore_percent_over_threshold OB 租户内存使用百分比超限
更新时间:2026-09-03 16:35:53
告警描述
该告警监测租户的内存使用是否超限,如果超限则上报告警。
告警原理
下表列出了该告警监控逻辑中涉及的关键参数。
| 参数 | 值 |
|---|---|
| 监控指标 | ob_tenant_host_memstore_percent |
| 指标来源 | SQL: select /*+read_consistency(weak)*/ tenant_name, tenant_id, stat_id, value from v$sysstat, __all_tenant where stat_id IN (130001, 130004) and (con_id > 1000 or con_id = 1) and __all_tenant.tenant_id = v$sysstat.con_id; sysstat_value 取 value 字段的值,其他字段作为 LABELS |
| 采集指标 | sysstat_value |
| 监控表达式 | 100 * sum(sysstat_value{metric_group="sysstat",stat_id="130001",@LABELS}) by (@GBLABELS) / sum(sysstat_value{metric_group="sysstat",stat_id="130004",@LABELS}) by (@GBLABELS) |
| 采集周期 | 1 秒 |
说明
- 统计事件 ID 为 130001:统计租户已使用的内存总量。
- 统计事件 ID 为 130004:统计租户最大可使用的内存总量。
表中的监控表达式表示取 "stat_id=130001 时 value 值之和" 与 " stat_id=130004 时 value 值之和" 的比值作为租户内存使用率监控指标值。
监控指标 ob_tenant_host_memstore_percent 的值表示 OceanBase 集群中租户的内存使用率,当使用率大于阈值(默认为 85%)时触发告警。
规则信息
| 监控指标 | 默认阈值(单位:%) | 持续时间 | 检测周期 | 消除周期 |
|---|---|---|---|---|
| ob_tenant_host_memstore_percent | 85 | 0 秒 | 60 秒 | 5 分钟 |
告警信息
| 告警触发方式 | 告警等级 | 范围 |
|---|---|---|
| 基于监控指标的表达式 | 警告 | 租户 |
告警模板
告警概述模板:${alarm_target} ${alarm_name}
告警详情模板:集群:${ob_cluster_name},告警:${alarm_name},MemStore 使用率 ${value_shown}, 超过 ${alarm_threshold} %
告警概述样例:ob_cluster=obcluster-1:tenant_name=tenant-1:svr_ip=xxx.xxx.xxx.xxx OB 租户内存使用百分比超限
告警详情样例:集群:obcluster-1,告警:OB 租户内存使用百分比超限,MemStore 使用率 86.0 %,超过 85.0 %
对系统的影响
租户内存不够时,可能会导致 SQL 执行变慢或者写入失败。
可能原因
常见于某一时刻写入偏高,而租户资源配置偏小。
处理方法
尝试在租户内存超限后对租户内存扩容。您可以通过执行预案快速处理,详细操作请参见 告警预案。
根据排查结果进行限流或者扩容
在 OCP 上进入该租户的 性能监控 ,并选择 性能与 SQL 页签。
选择时间为 "一周"。
查看 MEMStore使用百分比 的折线图。
观察告警时刻的内存使用是否异常升高。

若异常升高,或规律性升高,且每次升高都告警,而又资源不足。
可参考 限制 OceanBase 集群的流量 为该租户写类型的 SQL 绑定限制并发数的 Hint。
若正常波动或规律性升高,资源不紧张。
可参考 Unit 规格管理 将该租户的 Unit 规格中的内存调大。