解构 “存算分离”架构.docx
《解构 “存算分离”架构.docx》由会员分享,可在线阅读,更多相关《解构 “存算分离”架构.docx(4页珍藏版)》请在第一文库网上搜索。
1、解构存算分离架构存算分离,作为一种架构潮流,在架构设计和项目规划的时候经常被提及。现如今,数字化转型已经从选择题变成了必修课,企业IT架构的重塑也势在必行,所以我们有必要把这些所谓潮流的东西解构清楚。一、计算与存储为何要分离在计算机中,我们所说的计算其实指的是由CPU和内存组成的算力单元,存储指的是持久化的数据存放单元。从单体计算机的角度来讲,计算存储分离其实并不现实。试想一下,如果将计算机的计算和存储单元分开,指令都需要通过网络来传输,以目前网络的速度是很难与CPU计算速度相匹配的,所以从单体计算机的角度来讲,计算与存储分离是一个伪概念。不管我们承认与否,其实是网络一直在制约基础IT架构的演
2、进和发展,过去由于网络带宽的限制,我们习惯性的把计算和存储偶合在一起,以减少网络传输的压力、比较典型的就是MapReduce和Hadoop,就是用本地10代替网络传输,是计算和存储耦合在一起的典型场景。但是随着网络技术的发展,网络带宽和网络质量已经不再是瓶颈,磁盘10反而没有明显的增长,计算和存储耦合在架构上的缺点也逐渐暴露出来:1、耦合带来资源浪费:作为底层的资源平台,基础IT环境的资源总是有限的,站在业务的角度是计算先达到瓶颈,还是存储先达到瓶颈,他们的时间点是不一样的。由于计算和存储的耦合设计,无论扩计算还是扩存储,都在会造成资源的浪费;2、服务器款型繁杂,维护难度大:从运维的角度来讲,
3、降低服务器的款型是降低运维难度和工作量的有效手段。但是由于计算和存储的耦合设计,随着业务复杂度的增加和新业务线上的加快,对服务器资源配比的要求也会随之增加,维护一个繁杂的服务器款型表可以是一件好玩的事情;3、耦合造成扩容不便:计算和存储耦合在一起还有另外一个坏处,那就是每次扩弄都需要考虑数据的迁移,给本来简单的扩容工作带来很多风险和不可控因素。从上面的分析来看,架构不是一成不变的,会根据技术的发展和业务的发展进行演进和升级,计算和存储的分离设计,就是在这样一个背景下进入大家视野的。二、计算与存储分离的应用场景计算和存储分离主要应用在哪些方面呢,主要是数据库和消息队列:1、数据库以传统的主从结构
4、的数据库系统为例,主库接收数据变更,从库读取binlog,通过重放binlog以实现数据复制。在这种架构下,当主库负载较大的时候,由于复制的是binlog,需要走完相关事务,所以主从复制就会变得很慢。当主库数据量比较大的时候,我们增加从库的速度也会变慢,同时数据库备份也会变慢,我们的扩容成本也随之增加。因此我们也逐渐开始接受走计算和存储分离的道路,让所有的节点都共享一个存储。也许我们对这样的场景习以为常,其实这就是典型的计算和存储分离设计,现在很多的数据库都在逐渐向“计算和存储分离”靠拢,包括现在的PolarDB.OceanBase , TiDB等等。所以“计算和存储分离”应该是未来数据库的主
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 解构 “存算分离”架构 分离 架构