磁盘碎片化问题

【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】OceanBase
【 使用版本 】3.1.4
【问题描述】之前在生产使用MySQL的时候,有一规定是不建议使用delete,原因是避免出现碎片化的问题。
在测试环境POC的时候,发现执行delete 或者 drop table 后通过OCP查看集群磁盘用量并未立刻减少,手动发起合并后磁盘用量才有下降。

【问题现象及影响】

OB是否会有类似的碎片化问题?

应用删除数据后,是否需要运维发起合并操作?

【附件】

一般磁盘数据库在删除数据时候,都不会直接回收数据所占用的磁盘资源,因此看到的效果是即便删除了数据,实际上磁盘空间仍然没有变化。OB使用宏块管理磁盘数据,磁盘是在集群启动后根据配置参数预分配,目前还不支持磁盘的动态调小,因此drop和delete是无法缩小实际磁盘空间的。
另外磁盘空间复用是通过后台合并线程进行的(如果有配置),合并方式有多种,可以参考:https://www.oceanbase.com/docs/community/observer-cn/V3.1.4/10000000000449401
合并后会对数据做一次瘦身,增加空闲宏块的数量,以保证数据的刷盘

应该是不存在的。
合并之后才会有落盘操作。