写在前面
上周信誓旦旦开了个头,这周就发现内容难度直线上升,【差点让我成为了电商二级退堂鼓选手】,但本着知识就是用来嚼的信念,还是生生把关于云存储的内容浓缩到了两篇文章,还是那句话,学技术为什么不能简单点呢?理解至上,速成党有福了~
二话不说先上脑图(脑图仅用于梳理知识框架,完整内容点击链接)
--哎哎别关别关,我知道这框架很长,但关了自学更慢【太多不好记】,理解胜过死记硬背,以下的内容预计需要20min,过了这村没这店,20分钟点不来外卖打不完王者,用20分钟换1个小时,换不?
--猴~赶快开始吧!
--憋急憋急,按这框架写保证一半都没到必劝退,先聊一聊框架上这一堆到底是个什么逻辑。
上一篇文章中,提到了个很重要的概念,就是数据中心,这个数据中心最基本的一个功能便是存储,当然,除了存储,还有“复杂的大数据管理、处理”等功能,这便是“云存储”
由图可知,云数据中心的内容被夹在中间,因而你会发现这一章的内容,介绍完虚的介绍实的,介绍完实的又介绍虚的(要我说,要是担心我看得懂的话,不如全部都来虚的?)
所以云存储这一块儿,这篇文章将会以如下的逻辑展现:
从上一篇文章的联结点入手讲清楚概念(5min-上篇)核心part:架构(5min-上篇)关于网络部署点到为止(10min-上下篇)搭建数据中心关注的重要问题:节能、自动化、容灾(10min-下篇)云存储特点总结(1min-下篇)正当我苦于全网寻找云存储有什么好的切入点的时候,忽然在百度百科上看到这么一个词(别问我为什么这么简单还要全网找,我是个傻子)
诶?眼不眼熟,这不是上次云计算架构里面的东西吗?
于是我再回顾一下关于资源池的定义
将大量 相同类型的资源 构成 同构或接近同构 的资源池然而上一篇限于难度与深度,并没有展开来写,在这里补上:
其实“同构或接近同构”这个概念,可以具象化为多种结构(这里引用并改动了一下网友的图):
引自分布式与集群的区别是什么? - 大闲人柴毛毛的回答 - 知乎https://www.zhihu.com/question/20004877/answer/282033178真正做到同构的是集群结构,接近同构的是网格结构,为什么这么说呢?稍微举例解释一下:
集群结构:一个计算机算不过来了,再整几个一模一样的计算机作为一个整体一起算;网格结构:集群的结构下计算机通常都放到一起,在局部的网络范围内服务超快,一旦用户距离比较远,可能由于网络传输慢等问题效果就不那么好了。因此可以随时在另一个地方再找一个集群(或计算机,可以异构)一起工作,此时依旧作为一个整体;分布式结构:再也不是作为一个整体完成全部任务了,而是每个部分负责一个子任务,如A负责用户数据,B负责订单数据,C负责商品数据,每个部分各司其职。(更详细的解释参考网友回答)
看懂了这儿,恭喜你已经掌握了云存储的概念:
通过集群、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的系统。概念引自云存储起源和概述 - 云+社区 - 腾讯云,至于课堂中提到的另外一个概念:
云存储系统中,存储设备的硬件参数、应用程序、容灾备份处理等过程对用户都是透明的。这里只要记住对用户透明即可,看完了这一章自然就懂了
来咯来咯,它真的来咯~
(上一节提到云存储以“存储资源池”的方式提供服务,为什么到了这里又来一个架构呢?因为存储资源池只是一个部分,相当于这里的存储层,而云存储系统要提供服务就必须有前端和后端形成一个完整的系统。)
万变不离其宗,系统架构看多了都是相似的(没看多的话可以回看上一篇~)不必太过于纠结细节,从大处着手。
(1)用户访问层:任一授权用户可通过这层随时随地访问(面向用户,公用应用接口登录)
看个大概(2)应用接口层:提供个性化服务(面向用户,根据用户需求,开发不同的应用接口,提供相应的服务)
看个大概(3)基础管理层:提供不同服务间公共管理的统一视图(相当于通过一个视图即可调用下层多种设备同时提供同一种服务)
(4)数据存储层:管理和维护硬件设备
(华为云是允许学生注册账号的,登录控制台瞅瞅叭)
如果说云存储架构研究的是云存储系统内部,那么云存储的网络部署研究的则是系统外部——网络的体系结构,其中最主要的研究的就是交换机和交换机/服务器之间的线路问题。
(关于交换机的作用在这里不做详细解释)
(1)改进型树结构
做个铺垫:关于CLOS架构简单解释(因为后面两个技术都用到了)
前世:Crossbar结构(缺点:节点多且Input到Output只有一条通路)
节点与节点之间连接的线路太少今世:CLOS结构(优点:节点少,有冗余链路,不易阻塞)
节点与节点的线路更多了(a)Fat-Tree:树形结构
传统网络:越往上带宽越收敛(带宽收敛:假设线路越细、越少,单位时间能通过的数据就越少);胖树网络:带宽不收敛,树根处的网络带宽(粗线)和各个叶子处的网络带宽(细线)总和相等
上图看上去是线路变宽来达到带宽增大,实际上是通过更多的布线来实现的(即多条并行链路)
每两层之间的线路数是相等的这下Fat-Tree的特点应该就好理解很多了:
特点1:消除了树形结构上层链路对吞吐量的限制
特点2:为内部节点间通信提供多条并行链路
特点3:横向扩展的尝试降低了构建数据中心网络的成本
特点4:与现有数据中心网络使用的以太网结构和IP 配置的服务器兼容(b)VL2:更类似于网状结构
与Fat-Tree相同点:
都属于switch-only型拓扑,特点是三层结构:边缘层(即接入层)、汇聚层、核心层
与Fat-Tree不同点:
Fat-Tree类似二分图,边缘层和汇聚层被分成不同的集群(如上上幅图“橙红色框框”),集群之间通信需要经过上层线路(如下图),非常占用上层的资源,而且麻烦;
Fat-Tree集群之间通信的弊端(对应特点2)而VL2架构具有类似于网络路由分组转发的寻址方式,即可以选择任一路径、任一汇聚交换机到达目的设备,始终选择空闲的线路。(由算法实现负载均衡)
(对应特点1)虚拟机上层的地址不变(比方说访问百度时永远输入的都是http://www.baidu.com),底层的地址改变(实际上百度的虚拟机可能已经换了位置了,但底层地址依然能够准确找到)
(对应特点3)对于上层服务来说,网络中所有的服务器都是可分配的,即所有的服务器都位于同一个服务器共享池中
这下VL2的特点应该就好理解很多了:
特点1:扁平寻址,这可以允许服务实例被放置到网络覆盖的任何地方。
特点2:负载均衡将流量统一的分配到网络路径。
特点3:终端系统的地址解析拓展到巨大的服务器池。(2)递归层次结构
递归层次结构只能用“迷惑”这个词来形容了,(真的很复杂~)记住一个点就可以了“交换机与服务器都具有数据转发的功能”,这里只放 DCell的图上来,FiConn和BCube在链接里有。我是真的怕把大家吓走(这样就没人陪我一起痛苦了)
(没有放简化版的,简化版更不容易理解)
为什么突然加了一条分割线?
如果你看到了这儿,那么再次恭喜你,最难的部分已经过去,后面的真的很简单~~~
如果觉得消化不下,就休息一下吧,《云存储速学,看这两篇就够了(下)》速战速决!
(补充关于架构名称的解释:云存储分为“用户访问层”“应用接口层”“基础管理层”“数据存储层”,亦有说法叫“用户访问层”“数据服务层”“数据管理层”“数据存储层”,官方叫法书本上还无从考究,网上的普遍叫法都是第一种。)
相关标签: