---
title: OceanBase 数据库的 SSTable Cache 淘汰和清空逻辑-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于 OceanBase 数据库的 SSTable Cache 淘汰和清空逻辑相关的常见问题和使用技巧，帮助您快速解决 OceanBase 数据库的 SSTable Cache 淘汰和清空逻辑的难题。
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

划线反馈

# OceanBase 数据库的 SSTable Cache 淘汰和清空逻辑

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

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

本文讲述 OceanBase 数据库的 SSTable Cache 淘汰、清空的逻辑总结。

OceanBase 数据库的 SSTable Cache 最有代表性的为 Row Cache 和 Block Cache 两类。

当数据不在 MemTable 中时，它们可以加速对磁盘的访问；当他们失效时会对性能造成一定的影响，所以需要了解它们在什么时候会被淘汰、清空。以下为一些总结。

- 宕机重启，会清空 Cache。
 - 切主，会清空 Cache。
 - 转储，会导致刚刚转储的 MemTable 没有 Cache。
 - 正常的内存淘汰，Cache 内存是以 2MB 为单位整体淘汰的。OceanBase 数据库会根据每个 2MB 内存块上各个元素的访问热度为其计算一个分值，访问越频繁的内存块分值越高，同时有一个后台线程来定期对所有2M内存块的分值做排序，淘汰掉分值较低的内存块。​
 - 内存挤占，当内存满的时候会触发挤占。挤占是找到第一个没有正在使用的块淘汰，如果所有内存块都在使用则报错。没有正在使用的界定规则是内存引用计数为 0，所以热点块很难被挤占。

## 适用版本

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

上一篇

[cache_hold 与 cache wash 机制说明](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000209951)

下一篇

[如何理解 Cache 被 pin 住](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000209953) ![有帮助](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) 咨询热线
