PostgreSQL的多版本MVCC实现方式的优势和劣势

九月课程2024-04-29 16:40:03  80

实现MVCC的方法有以下两种。

·第一种:写新数据时,把原数据移到一个单独的位置,如回滚段中,其他用户读数据时,从回滚段中把原数据读出来。

·第二种:写新数据时,原数据不删除,而是把新数据插入进来。

PostgreSQL数据库使用的是第二种方法,

Oracle数据库和MySQL数据库中的InnoDB引擎使用的是第一种方法.

到底哪种好,争论真的很大,来自PG的OPENGUASS,就调整了这个,使用ORACLE的方式来实现 MVCC。

看看专家怎么说:

相对于InnoDB和Oracle,PostgreSQL的多版本的优势在于以下几点:

·事务回滚可以立即完成,无论事务进行了多少操作。

·数据可以进行很多更新,不必像Oracle和InnoDB那样需要经常保证回滚段不会被用完,也不会像Oracle数据库那样,经常遇到“ORA1555”错误的困扰。

相对于InnoDB和Oracle,PostgreSQL的多版本的劣势在于以下几点:

·旧版本数据需要清理。PostgreSQL清理旧版本称为VACUUM,并提供了VACUUM命令进行清理。

·旧版本的数据会导致查询更慢一些,因为旧版本的数据存储于数据文件中,查询时需要扫描更多的数据块

【声明】:本平台发布及转载文章仅作同行交流学习,部分数据来源于网络,未经证实,并非商业用途,也并非针对具体单位和个人,请勿对号入座,部分内容及图片来源于网络,版权归原作者所有,若未能找到作者和原始出处还望谅解。如有版权疑问,或者文章内容出现侵权行为,请联系本官网后台,我们会第一时间及时进行删除处理,谢谢。

转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/366963.html
0
随机主题
米兰旧将: 德比六连败不可接受, 我在目前这支米兰能够踢上比赛万代南梦宫预测《艾尔登法环》DLC销量将会非常高西安举办2024年国际生物多样性日主题宣传活动活动合影站角落, 朱婷被孤立? 张常宁丁霞热聊, 谁注意李盈莹表态骁龙8Gen2旗舰直降400,金属边框+索尼大底,体验不输一加12了解交法我有责 安全交通为大家乌苏为10家拥军企业授牌象棋对决中的利器:雷公炮布局助你克敌制胜#象棋24G+1TB跌价500元, 120倍长焦+5400mAh, 全能旗舰机也妥协了15年攻关实现全人工繁殖 探秘“水中大熊猫”川陕哲罗鲑珠海一工厂突发火灾, 当地回应: 系仓库着火, 无人员伤亡你们觉得我这个车改成什么颜色比较适合?如果你们想洗车贴膜这些,这家店真的值得推荐大家为什么都选全新零跑C11, 新款又做了哪些升级?618不知道怎么入手数码产品? 这四款产品不容错过!强力大锤李凯尔首节4中3独得7分 独行侠全队替补仅3分“美国口碑最佳AR眼镜”VITURE ONE体验:这是最懂御三家游戏玩家的品牌!央视财经2024年《财访》特别节目: 如何打造全球市场上品牌差异化的竞争优势?李金羽辞去中甲云南玉昆队主教练职务四部门: 优化外商投资环境, 继续缩减外资准入负面清单有人认为职业年金是私分国有资产的由头, 你认为这种说法靠谱吗?你的第一把全铝客制化键盘 只需要三百多的玄派PD75mV2首发套件
最新回复(0)