- 1、本文档共40页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
去IOE关键技术分析
演讲人:吕海波(VAGE )
内容介绍
• 互联网企业去O关键技术分析: Sharding
• 去,还是不去 !
• O的替补
互联网企业去O关键技术分析:Shanding
Sharding,是Sharde-nothing 的缩写,有些地方也就horizontal
paroning/horizontal split,也就是数据库切片。简单点说,就是将一张大
表,拆分到N个数据库中。咱们后面,用一个更形象的词称它:拆表。
对并发比较高的数据库进行去O时,一定要考虑拆表。哪么,问题来了:
为什么要拆表
非O数据库目前的并发机制,不如Oracle
更加强大。这个短板,通过拆表来弥补最
为方便。
(注:本文中非O数据库主要以MySQL为例,不代表所有非O数
据库)
决定并发的因素:锁。锁粒度的大小等锁
机制决定了并发程度。
去O关键技术 -- 拆表 :架构师读书问题
(有一个著名的讨论线程同步的问题,叫哲学家就餐问题,我也东施效颦,来个架构师
读书问题):
假设5个架构师要读同一本纸制书:
书只有一本,人有5名,为了避免打架,方法就是将书装进一个盒子中锁上,有一把钥
匙可以打开这个盒子得到书,这把钥匙我们称为Book Key (简称BK)。
5名架构师谁先得到BK,就能打开盒子,得到书,然后开始读书。而其他人就只能等着。
这种方式资源使用率有限,并发不高。
去O关键技术 -- 拆表 :架构师读书问题
如何提高并发呢, “细化锁的粒度”。
比如5名架构师分别是A 、B、C、D和E。这本 《Oracle 内核技术揭密》共有7章,假设5名
架构师分别想看不同的章,A想看第4章,共享池原理。B想看第3章,Buffer Cache原理,
C想看第6章,Redo原理,等等。
那么问题就很简单了,将书拆开,按章节拆成多本。一共7章,就拆成7本,分别装在7
个盒子中,每个盒子都有一把钥匙,可以打开盒子,得到书的某一章。这样就有了7个
盒子、7把钥匙。这7个钥匙分别编号为BK1,2,3……7 。
A想看第4章,他只需要得到BK4,打开锁得到盒子中的第4章,就可以了。A可以拿着第4
章自己看个够,不影响B同一时间看第3章,C在同一时间看第5章等等。这样,A 、B、C、
D和E 5名架构师可以同时读书了。并发得到提高,系统资源利用的更加充分。
去O关键技术 -- 拆表 :架构师读书问题
细化锁的粒度可以有效的提高并发,但这并不是一件容易的工作。
比如,下面这个问题,如果有多名架构师要读同一章怎么办?如何进一步提升“架构师
读书问题”的并发?
这个问题很简单,将每一章再拆成页,A看第1页,B看第5页,等等。
去O关键技术 -- 拆表 :架构师读书问题
但这个问题只是看似简单。 《Oracle 内核技术揭密》共有400页,将书拆成页后,每一页
都要有一个锁保护,锁的数量就是400 。
看到没,锁从1个,拆成章后变成6个,拆成页后变成400个,越来越多。锁并不是凭空
而来的东西,它要占内存,处理它要耗CPU资源。
将书拆成页后,现在你看书的步骤是这样的:
查找第一页的锁
判断是否可以得到它
如果可以得到,持有它
开始阅读第一页
释放第一页的锁,查看有无其他人在等待,有的话通知他可以持有了
查找第二页的锁
判断是否可以得到它
如果可以得到,持有它
开始阅读第二页
释放第二页的锁,查看有无其他人在等待,有的话通知他可以持有了
………………
去O关键技术 -- 拆表 :架构师读书问题
这就是锁太细、太多的问题。我们今天不讨论锁的设计,只是说明一个问题,并发的提
高 ,不是想提你就提。
回过头说拆表的问题。
Oracle在各种锁机制(或者说并发机制)上,还是下足了工夫的,比很多其他数据库要
好。比如说,MySQL。
MySQL在将重做日志数据写到Redo l
您可能关注的文档
最近下载
- 第一课整理书包有条理(课件)-一年级上册劳动鄂教版.pptx
- QJ 2850A-2011 航天产品多余物预防和控制.doc
- 2025道德与法治九年级上册开学第一课(含视频).pptx
- 消防质量保证体系及质量保证措施v2.pdf VIP
- 《智慧运输运营》课件——项目七 物流运输决策.pptx VIP
- Unit 7(单元解读课件)-八年级英语上册同步备课系列(人教版).pptx VIP
- (2021-2025)中医医院“十四五”建设与发展规划.pdf VIP
- 活在课堂里 课件.pptx VIP
- 中华传统文化教学设计(山东教育出版社)【四年级】.docx
- 最新苏教版小学数学六年级上册(全套)试卷【含答案】.doc
文档评论(0)