中国人民大学:从根说起—可串行化理论的光与影.docxVIP

中国人民大学:从根说起—可串行化理论的光与影.docx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

从根说起—

可串行化理论的光与影

演讲人:李海翔@那海蓝蓝

/room/csdnlive1/8XwRwx6K

2023年1024程序员节

1.第三代分布式数据库(1)--踢球时代

2.第三代分布式数据库(2)--创新之源

3.第三代分布式数据库(3)--一致性八仙图

2023年中国数据库技术大会

目录

CONTENTS

?

什么是“可串行化理论”?可串行化理论的“光”可串行化理论的“影”

4凭什么同时保证数据一致性与性能?

1什么是“可串行化理论”?

我们只是熟悉它(或只是听说过)?还是真的掌握了她?

1什么是“可串行化理论”?

?真实含义1

?真实含义

1

2

?理论层面

3?

3

?

?实践层面

?实践层面

?串行能带来数据异常不?

1什么是“可串行化理论”?

文献

年份

并发算法

采用的冲突模式

可串行化实现

RW

WR

WW

[247]

1976

Locking

事务和一致性并发度等概念被JimGrey提出

[245、246]

1976

Locking

提出2PL协议,定义了被广泛使用的、用于验证事务并发执行正确性的“serialequivalence”标准,对可串行化的概念进行了形式化的描述

[229]

1979

Locking

对于RR模式,读操作施加读锁互斥其它并发事务发生,实现可串行化。采用了RW、WR、WW三种冲突模式是用于弱于可串行化的其它隔离级别

[261]

1979

Locking

提出“STRICTSERIALIZABILITY”和冲突图等

[166]

1982

OCC+DTA最早DTA

避免

基于锁替代临界区,互斥其它并发事务发生写写冲突,发生了RW、WR冲突则动态调整事务的时间戳范围,基于提交时间戳(通过协商动态获得)进行排序实现可串行化

[126]

1983

TO算法

提出基于时间戳的并发访问控制协议

[157]

2014

OCC+DTAMaaT

避免

基于提交时间戳排序,但时间戳是在RW、WR二种冲突模式种通过协商动态获得;在被写的数据项上加软写锁,避免第二次被写(避免写写冲突),软写锁替代临界区的作用

[129]

1984

OCC/BOCC

避免

基于临界区互斥其它并发事务进入验证阶段避免WW冲突,并先进入临界区者排序在前,完成可串行化排序目的;BOCC已经提交事务的写集和本事务的读集比较;FOCC本事务的写集和活跃事务的读集比较

OCC/FOCC

[113]

1995

对多种数据异常进行了形式化定义,没有提及可串行化实现方式(基于封锁技术定义数据异常和隔离级别)

[226]

2000

对多种数据异常进行了形式化定义,没有提及可串行化实现方式(基于封锁、乐观、MVCC技术定义数据异常和隔离级别)

[114]

2009

MVCC/SSI

避免

理论方面是通过打破依赖图中的环实现可串行化,实践中是通过破坏双方向的RW冲突发生实现可串行化(双方向的读-写冲突是形成环的必要条件)。读操作基于快照,禁止WW冲突发生

[79]

2012

MVCC/WSI

提交阶段,对于本事务的读集数据,检查是否被其他事务修改,即检查RW冲突(类似FOCC的方式)。读操作基于快照

1什么是“可串行化理论”?

目录

CONTENTS

?

什么是“可串行化理论”?可串行化理论的“光”可串行化理论的“影”

4凭什么同时保证数据一致性与性能?

2.1“可串行化理论”解决了哪些问题?

?理论层面

?理论层面

?真实含义

12

1

2

??实践层面?

?

?实践层面

?串行能带来数据异常不?

3

ü完整性约束?üACID的C?

ü理论和实践不一致

2.2“可串行化理论”的价值在哪里?

解决部分异常现象

没有数据异常的全集,就没有好的鉴别力

提出普遍认可的算法

不能得到高效的并发算法

STEPSTEP

STEP

STEP

STEPSTESTEP

STEP

02

04

03

提供提高性能的手段

不能认知隔离级别的弊端

似乎有理的直观理论

不能有效认知可串行化理论的边界与缺陷

2.2“可串行化理论”的价值在哪里?

走路

一个满目疮痍的世界

2.2“可串行化理论”的价值在哪里?

一个满目疮痍的世界

目录

CONTENTS

?

什么是“可串

文档评论(0)

哈哈 + 关注
实名认证
文档贡献者

嗨,朋友,我都会用最可爱的语言和最实用的内容,帮助你更好地理解和应对职场中的各种挑战!

1亿VIP精品文档

相关文档