【TiDB 4.0 PCTA 学习笔记】-2.3.5 How to use Transactions in TiDB(如何在 TiDB 中使用事务)@3班+张近博

课程名称:课程版本(201)+ 2.3.5 How to use Transactions in TiDB(如何在 TiDB 中使用事务)

学习时长:17分钟

课程收获:对于TiDB的事务模式和原理加深了理解,对于业务运用场景提供了依据

课程内容:

1.事务概述
事务的定义:一个集合要操作的事情的单元,并具有原子性、一致性、隔离性、持久性
为什么需要事务:事务保障数据安全,并发的数据安全性,保证用户端观测数据的一致性
2.TiDB事务模型设计
1)分布式事务设计依据Google的percolate模型设计,多版本控制和二段式提交
2)乐观事务模式:快照隔离级别、数据修改操作缓存于内存中、写写冲突
3)悲观事务模式:引入悲观锁,增加行锁以及正确度机制,增加已提交读的事务隔离级别
3.如何使用TiDB中的事务
1)业务评估:需要什么样的隔离级别,锁超时和锁等待处理,一致性读的要求,是否会有大量的并发DDL
2) 乐观模式:支持begin,start transaction,commit,rollback操作,执行begin会默认提交上一次未提交的事务,DDL操作也会默认提交上一次未提交的DDL操作,支持设置autocommit,
3)悲观模式:v3.0.8之后的版本默认开启悲观事务模式,支持全局或者session级别设置悲观事务模式,以及已提交读的隔离级别

学习过程中参考的其他资料