为了账号安全,请及时绑定邮箱和手机立即绑定

在线分布式数据库原理与实践

难度中级
时长 1小时53分
学习人数
综合评分9.60
48人评价 查看评价
9.5 内容实用
9.6 简洁易懂
9.7 逻辑清晰
  • 图灵机:一个参数,经过一个算法,返回一个数据的过程

    查看全部
  • 2PL,2阶段锁。2 phrase lock

    2PC,2阶段提交事务,2 phrase commit

    查看全部
  • MVCC:乐观锁

    让版本低的并发更新回滚,优势是并发低时,性能好。代价是,并发高时,失败率高,需要不断重试

    查看全部
  • 死锁扩展:U锁

    MVCC拾遗

    Two Phase Lock (2PL)

    查看全部
  • 深度单击事务-小结:

    ACID,原子性,一致性,

                隔离性:读已提交

                              读未提交

                              可重复读

                               序列化读

                               扩展(快照隔离级别:MVCC / SNAPSHOT ISOLATION)用新方式实现传统意义上读未提交场景,同事保证可序列化的隔离级别。当写大于读时,会增加系统成本,MVCC适合读比写多的情况

            持久性:1直接写入内存:优点是IOPS高,缺点是可能丢失数据

                          2 Group Commit ,将多次数据拼成一个包,优点是保证系统持久性和吞吐量,缺点是请求延迟提升。

    查看全部
  • 事务调优原则:

    减少锁的覆盖范围:

            Mysiam 表锁 -> Innodb 行锁

            原位锁 -> MVCC多版本

    增加锁上可并行的线程数:

            读锁写锁分离,允许并行读取数据

            多线程并行读取

            允许多人读取

    选择正确锁类型

            悲观锁 使线程到blocking 状态,CPU不会调度他,当通知给它信息为ok状态时,切换回等待状态,CPU可以对它进行调度。最大的特点就是,换入换出增加系统开销。比较适合,并发争抢比较严重的场景

            乐观锁 ,适合并发争抢不太严重的场景


    查看全部
  • MVCC:可保证读写并行,写读并行

    快照(snapshot isolation):针对度多写少场景优化;并行度能达到或超过读未提交,而隔离级别很高

    读未提交:写加锁,但是读的话不加锁,会导致读到正在写的数据;

    快照:保证读到一致性的同时,实现读未提交

    事务:将多种不同的命令,组装到一起的过程

    持久性:事务完成以后,该事务对数据库所做的更改,便持久的保存在数据库之中:

                1 提交请求到内存后返回

                2 将内存的数据打包到磁盘

    隔离性(扩展:mvcc ,snapshot isolation)

    持久性(扩展:持久性保证策略)


    查看全部
  • 事务:其本质是 锁和并发
    查看全部
  • 读未提交
    查看全部
  • 死锁产生原因:两个线程;分别拥有了对方想要获得资源,并且两个线程想要去拿对方锁定的资源;

    解决方法:尽可能不死锁;碰撞检测(主流);等锁超时

    查看全部
  • 一个事务单元

    查看全部
  • 原子性

       要么全部成功 要么全部失败

    一致性 

      序列化读写(使用锁)

    隔离性 

       读写锁 :-可重复读(repeatable  read) 读读可以并行 读写不可以

                        -读已提交 (read committed)  读读并行 读写并行 (写读不行)

                                会出现不可重复读的问题,第一次读和第二次读的数据的版本号会不一致

                        -读未提交 (read uncommitted) 写加锁 读不加锁 , 读读 读写 写读并行 写写串行

                                会读到写中间数据


    查看全部
  • 4种隔离性
    查看全部

举报

0/150
提交
取消
老师告诉你能学到什么?
本系列以分布式数据库原理与实践为主线,介绍组成分布式数据库的几个关键的部分:1) 事务与分布式事务.2) 关系代数与优化 3) 分布式KV系统与NoSQL 4) 数据一致性专题 5) 淘宝DRDS/TDDL实践经验 等多方面原理与实践专题,欢迎收藏

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!