---
title: MEMStore 为什么会存在 active 大于 total 现象-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 MEMStore 为什么会存在 active 大于 total 现象相关的常见问题和使用技巧，帮助您快速解决 MEMStore 为什么会存在 active 大于 total 现象的难题。
---
切换语言

- 简体中文
- English

划线反馈

# MEMStore 为什么会存在 active 大于 total 现象

更新时间：2026-05-08 08:11

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：TechNote  

active 和 total 的含义如下。

- active：当前活跃的 MEMTable 的内存占用大小。
 - total：当前所有 MEMTable 的内存占用大小。

按照字段的含义，理论上 total 是一定大于 active 的，但是也会存在如下 active > total 的异常现象。

![OceanBase](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/knowledge-base/database/memory/imgj5iuvOboSB.png)

造成以上异常现象的原因是 active 和 total 内存计算方式的不同。

- active：是按照最早未冻结的位点到当前活跃位点之间的区间内存总和计算的。
 - total：是按照所有已分配未释放的内存总和计算的。

MEMStore 的内存是以 2M 为单位进行分配的，我们用 [] 表示一个 2M 的分配单元，active 与 total 的计算如下表格所示。

| 状态 | 内存分配示例 | 内存使用统计 |
| --- | --- | --- |
| 未分配 | [未分配] [未分配] [未分配] [未分配] [未分配] | active=0, total=0 |
| 已分配 | [已分配] [已分配] [已分配] [未分配] [未分配] | active=3, total=3 |
| 分区转储1（未落盘） | [已分配] [已冻结] [已分配] [未分配] [未分配] | active=3, total=3 |
| 分区转储2（已落盘） | [已分配] [未分配] [已分配] [未分配] [未分配] | active=3, total=2 |
| 租户转储1（未落盘） | [已冻结] [已冻结] [已冻结] [已分配] [未分配] | active=1, total=4 |
| 租户转储2（已落盘） | [未分配] [未分配] [未分配] [已分配] [未分配] | active=1, total=1 |

## 适用版本

OceanBase 数据库 V2.x、V3.x 版本。

Previous

[Load Data 下 ObPartDataFragMgr 内存泄漏](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000005476024)

Next

[写入限速导致日志告警：partition table update task cost too much time to execute](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000988445) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
