基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
节点数据盘空间满
更新时间:2023-08-09 11:25:43
OceanBase 数据盘空间满的情况一般比较少见,但是在写满后也会导致无法转储、无法合并、内存无法释放的问题,进而导致集群无法写入。
应急处理流程
处理数据盘空间满的几个策略如下:
对于分布了多个租户的 OB 节点,首先考虑通过扩容节点+迁移 unit 的方式均衡数据。
扩容节点
扩容节点可以使用 OCP 页面操作或者使用命令行操作,具体步骤请参见 添加 OBServer。
手动迁移 unit 到扩容节点。
使用 OCP 进行手动迁移,可以通过双击 unit 后的规格进行资源的迁移操作。具体步骤请参见 查看集群的资源信息。迁移只能在单个 zone 内进行。
注意
手动进行迁移 unit 节点即负载均衡时,请关闭 OceanBase 的自动负载均衡,否则可能影响当前用户的设定,将 unit 迁移回原来的位置。
对于暂时无法迁移 unit 或通过扩容进行数据均衡的情况,通常采用如下三种方式应急。
调大 OceanBase 集群磁盘最大空间百分比。
ALTER system SET datafile_disk_percentage = 98;该参数默认值为
90,应急时调大可以临时释放一部分空间。调整 OB 集群最大保留版本数。
ALTER system SET max_kept_major_version_number = 1;该参数默认值为
2,应急时改小为1,也可以临时释放一部分空间。注意
应急时调整的参数,在应急处理后应调整为默认值,以备下次应急使用。
删除部分可删除的数据、表、冗余索引等,并清空回收站中的数据。回收站的数据清理后就无法恢复,清理数据请您反复确认无误后才可执行。