GBase 8c核心特性-原位更新

PostgreSQL使用多版本并发控制MVCC机制:

l 当执行delete时,数据库将删除元组直接标记为dead,并不会真正从物理上删除;

l 当执行update时,数据库将会使用unused空间写入一个新的元组,然后将旧元组标记为dead,也不进行物理删除;

l 当表上频繁DML时,dead tuple会逐渐将空间耗尽,同时做全表扫描时产生很多额外I/O。

GBase 8c采用原位更新技术:

l 将new tuple放在原位,将dead tuple集中存放在undo;

l 去除vacuum,保证数据回收时IO稳定;

l 数据空间缩减。

PG 采用追加更新方式存储数据,也就是当修改数据时,不是在原位置修改,而是写入一个新记录,这会导致空间膨胀,也就需要定期回收过期的数据空间。这一直是 PostgreSQL 的一个弱项。

而GBase 8c实现了 Undo 机制,也就可以在原位置更新数据。这带来的好处包括:

l 高性能:对插入、更新、删除等不同负载的业务,性能以及资源使用表现相对均衡,相比Append Update引擎性能提升10%;

l 运行平稳:性能运行平稳,8小时性能滚降值从13.8%降低至2.5%;

高效存储:支持最大限度的原位更新, TPCC负载下平均节约空间15%~20%,UNDO空间统一分配,集中回收,复用效率更高,存储空间使用更加高效、平稳。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值