搞不清分布式存储和中心化存储?二者有何关系?
扫描二维码
随时随地手机看文章
不管在哪个时代,存储都是非常重要的。因此,我们对于存储应当具备一点了解。为增进大家对存储的认识,本文将对分布式存储、中心化存储以及二者之间的关系予以介绍。如果你对存储具有兴趣,不妨和小编一起继续往下阅读哦。
分布式存储是一种数据存储技术,通过网络使用企业中的每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在企业的各个角落。分布式存储系统需要使用多台服务器共同存储数据,而随着服务器数量的增加,服务器出现故障的概率也在不断增加。为了保证在有服务器出现故障的情况下系统仍然可用。一般做法是把一个数据分成多份存储在不同的服务器中。但是由于故障和并行存储等情况的存在,同一个数据的多个副本之间可能存在不一致的情况。这里称保证多个副本的数据完全一致的性质为一致性。分布式存储是相对于中心化存储来说的,中心化存储,也叫集中式存储。所谓中心化存储,从概念上可以看出来是具有集中性的,也就是整个存储是集中在一个系统中的。但中心化存储并不是一个单独的设备,是集中在一套系统当中的多个设备。以一般公司中心化数据存储为例,简单分析下中心化存储模式。
在这个存储系统中包含很多组件,除了核心的机头(控制器)、磁盘阵列(JBOD)和交换机等设备外,还有管理设备等辅助设备。
在中心化存储中最重要的部件是机头,机头一般包含两个控制器,这两个控制器实现互备的作用,防止其中一个硬件故障导致整个存储系统的不可用。机头包含前后端两个入口,通过后端端口机头可以连接更多的存储设备,从而形成一个非常大的存储资源池。从上面我们可以看出中心化存储最大的特点是有一个统一的入口,所有数据都要经过这个入口,数据被统一管理统一调用,这个入口就是存储系统的机头部分。
而如今分布式存储的概念包括分布式文件系统,分布式缓存,分布式区块存储等,现在简单介绍其中分布式文件系统。中间控制节点架构简称为:HDFS,分布式存储最核心的是基于区块链去中心化的技术构架,其目的是通过廉价的服务器来提供使用与大规模、高并发场景下的Web访问问题。
如果客户端需要从某个文件读取数据,首先从namenode获取该文件的位置(具体在哪个datanode),然后从该位置获取具体的数据。是点对点的数据传输和存储,因此,通过这种分布式存储架构可以通过横向扩展datanode的数量来增加承载能力,也即实现了动态横向扩展的能力,从根本上能够防止黑客入侵,大大提高了数据的安全性能。
Ceph存储系统的架构,在该架构中与HDFS不同的地方在于该架构中没有中心节点。客户端是通过一个设备映射关系计算出来其写入数据的位置,这样客户端可以直接与存储节点通信,从而避免中心节点的性能瓶颈。
客户端访问存储的大致流程是,客户端在启动后会首先从Mon服务拉取存储资源布局信息,然后根据该布局信息和写入数据的名称等信息计算出期望数据的位置(包含具体的物理服务器信息和磁盘信息),然后该位置信息直接通信,读取或者写入数据。
一致性哈希的方式就是将设备做成一个哈希环,然后根据数据名称计算出的哈希值映射到哈希环的某个位置,从而实现数据的定位。
为了保证数据分配的均匀性及出现设备故障时数据迁移的均匀性,一致性哈希将磁盘划分为比较多的虚拟分区,每个虚拟分区是哈希环上的一个节点。整个环是一个从0到32位最大值的一个区间,并且首尾相接。当计算出数据(或者数据名称)的哈希值后,必然落到哈希环的某个区间,然后以顺时针,必然能够找到一个节点。那么,这个节点就是存储数据的位置。
以上便是此次小编带来的x相关内容,通过本文,希望大家对y具备一定的认知。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!