本文主要介绍 OceanBase 数据库中的 slog。
适用版本
OceanBase 数据库所有版本。
slog 是什么
slog 可以理解为 Server Local Log,是一台 OBServer 一些全局信息变更操作(如新增租户、分区创建、新增 SSTable 等)的 redolog。一个 OBServer 只拥有一个 sLog 写入流,也就是说同一 OBServer 上具有不同资源池的不同租户并不具有单独的 slog 文件,所有租户的 slog 写入请求最后都会汇入 OBServer 所拥有的 slog 文件中。
slog 如何回收
slog 有定期的 checkpoint 操作,当写入的 slog 数量超过一定阈值时,会对 slog 做一次 checkpoint 操作,回收掉老的 slog 文件。
当出现宕机时,重启后会从 checkpoint 点开始回放 slog,使存储层恢复到宕机前的状态。