GBase 8c 通过锁提前释放(Early lock Release,ELR)来提升系统的吞吐量。
在数据库中,典型的事务操作流程如下: 1.开始事务; 2.查找需要更新的数据并加锁,准备更新; 3.更新数据并产生日志;
4.日志提交; 5.日志持久化; 6.释放锁; 7.事务提交并通知客户端;
事务在提交并且持久化日志的时候会带来 IO 操作,而 IO 操作通常而言比较 耗时。如果事务中此前的操作都是内存操作的话,这些 IO 的相对耗时就会显得 更大。IO 虽然可以做成异步的,但是在 IO 结束之前锁都仍然会被持有,从而会 阻塞其他的并发事务。如果可以把第 6 步释放锁的操作提前,放到第 5 步日志持 久化之前,则可以让并发操作同一记录(试图获得锁)的事务提前开始执行,从 而可以增加系统的吞吐量。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
数据库国产化替代深化:DBA的机遇与挑战
代晓磊
1283次阅读
2025-04-27 16:53:22
【专家有话说第六期】数据库考证到底有用么?国产时代DBA如何构建真实竞争力
墨天轮编辑部
1002次阅读
2025-05-06 17:50:06
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
527次阅读
2025-04-17 17:02:24
4月“墨力原创作者计划”获奖名单公布!
墨天轮编辑部
178次阅读
2025-05-13 16:21:59
繁华落尽,烟火人间,3000万相亲局的行业百态
多明戈教你玩狼人杀
154次阅读
2025-04-22 11:53:46
大家也一起去捕捉宝可梦吧!
多明戈教你玩狼人杀
136次阅读
2025-04-14 11:41:47
数据库管理-第321期 数据库国产的工作量(20250507)
胖头鱼的鱼缸
81次阅读
2025-05-07 13:28:09
从体系化说起
多明戈教你玩狼人杀
75次阅读
2025-05-09 12:10:03
这应该是接近真实的中国数据库TOP15
梧桐
44次阅读
2025-05-12 13:28:03
安全可靠的国产信创数据库PolarDB V2.0 介绍
数据库知识分享者
44次阅读
2025-04-28 10:53:21