For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
我们在前几期的文章中给大家简单介绍了数据库架构的一些基础知识等内容,而本文我们就再来学习一下,数据库事务实现原理与方法分析。
数据库实现事务会有多种不同的方式,但基本的原理类似,比如都需要对事务进行统一的编号处理,都需要记录事务的状态(是成功了还是失败了),都需要在数据存储的层面对事务进行支持,以明确哪些数据是被哪些事务插入、修改和删除的。同时还会记录事务日志等,对事务进行系统化的管理以实现数据的原子性、一致性和持久性。
要实现事务的隔离性,基础的就是通过加锁机制,把并发操作适当串行化来保证数据操作的正确逻辑。但是为了要保证系统具有良好的并发性能,必须要在实现事务隔离性时找到合理的平衡点。
大部分数据库(包括Oracle、MySQL、Postgres在内)在做并发控制的时候,都会采用MVCC(多版本并发控制)的机制来保证系统具有较高的并发性。不同数据库实现MVCC的具体方案不尽相同,但其基本原理类似。
所谓MVCC,就是数据库中的同一查询根据相关事务执行的先后顺序以及隔离级别的不同,可能会存在不同版本的结果,通过这样的手段来保证大部分查询操作不会被修改操作阻塞并保证数据逻辑的正确性。简单来说就是,用存储空间来交换并发能力。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。