请问PolarDB这个问题是什么原因 ?

PolarDB中,我这边一执行 ALTER TABLE transfer_bill_detail ENGINE='InnoDB'; analyze table transfer_bill_detail; 这个sqL语句,一级备份物理空间占用的大小就会暴增,之前用mysql的时候执行就不会出现这种情况,数据大小原先是1.9G 执行之后变成600多兆了 一级物理空间增加近10G大小,请问是什么原因 ?

展开
收起
三分钟热度的鱼 2024-01-17 20:09:01 135 分享 版权
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    这个问题可能是由于PolarDB的备份机制导致的。在执行ALTER TABLE语句后,PolarDB可能会对表进行重新分区或重建索引等操作,这些操作会导致备份数据的物理空间占用增加。

    为了解决这个问题,您可以尝试以下方法:

    1. 在执行ALTER TABLE语句之前,先停止PolarDB的备份任务,以避免备份数据的物理空间占用增加。

    2. 在执行ALTER TABLE语句之后,及时清理不再需要的备份数据,以释放物理空间。

    3. 如果可能的话,尝试将PolarDB的数据存储在其他类型的数据库中,如MySQL,以避免出现类似的问题。

    2024-01-18 13:46:52
    赞同 4 展开评论
  • 一级快照的物理空间我们统计的是真实占用的物理空间大小,PolarDB存储快照的实现方式是写时拷贝,这个实例目前的数据量已经到2.11TB,快照的实际占用空间会随着你们的数据修改操作发生真实的数据copy,然后上涨,这个和alter table不直接相关。这个逻辑是这样的,快照数据逻辑上是原数据的一份真实拷贝,polarBD利用写时copy技术,在快照开始的时候把快照真实数据量降到非常小,几十G远小于现在的2.11T。此回答整理自钉群“PolarDB专家面对面 - 通用功能咨询”

    2024-01-17 20:23:55
    赞同 4 展开评论

PolarDB 分布式版 (PolarDB for Xscale,简称“PolarDB-X”) 采用 Shared-nothing 与存储计算分离架构,支持水平扩展、分布式事务、混合负载等能力,100%兼容MySQL。 2021年开源,开源历程及更多信息访问:OpenPolarDB.com/about

还有其他疑问?
咨询AI助理