常见分布式存储系统

一、数据存储类型

一般情况下,我们将存储分成了4种类型,基于本机的DAS和网络的NAS存储、SAN存储、对象存储。对象存储是SAN存储和NAS存储结合后的产物,汲取了SAN存储和NAS存储的优点。

1.DAS

DAS将计算、存储能力一把抓,封装在一个服务器里。大家日常用的电脑,就是一个DAS系统。
在这里插入图片描述

2.NAS

如果将计算和存储分离了,存储成为一个独立的设备,并且存储有自己的文件系统,可以自己管理数据,就是NAS。所以NAS存储可以被不同的主机共享。服务器只要提需求,不需要进行大量的计算,将很多工作交给了存储完成,省下的CPU资源可以干更多服务器想干的事情,即计算密集型适合使用NAS。
在这里插入图片描述

3.NAS

计算和存储分离了,存储成为一个独立的设备,存储只是接受命令不再做复杂的计算,只干读取或者写入文件2件事情,叫SAN。
因为不带文件系统,所以也叫“裸存储”,有些应用就需要裸设备,如数据库。存储只接受简单明了的命令,其他复杂的事情,有服务器端干了。再配合FC网络,这种存储数据读取/写入的速度很高。
但是每个服务器都有自己的文件系统进行管理,对于存储来说是不挑食的只要来数据我就存,不需要知道来的是什么,不管是英语还是法语,都忠实记录下来的。但是只有懂英语的才能看懂英语的数据,懂法语的看懂法语的数据。所以,一般服务器和SAN存储区域是一夫一妻制的,SAN的共享性不好。当然,有些装了集群文件系统的主机是可以共享同一个存储区域的。

4.对象存储

对象存储大量使用在互联网上,大家使用的网盘就是典型的对象存储。对象存储有很好的扩展性,可以线性扩容。并可以通过接口封装,还可以提供NAS存储服务和SAN存储服务。

VMware的vSAN本质就是一个对象存储。

二、分布式存储系统

普通存储方案:Rsync、DAS(IDE/SATA/SAS/SCSI等块)、NAS(NFS、CIFS、SAMBA等文件系统)、SAN(FibreChannel, iSCSI, FoE存储网络块),Openfiler、FreeNas(ZFS快照复制)由于生产环境中往往由于对存储数据量很大,而SAN存储价格又比较昂贵,因此大多会选择分布式存储

GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自适用于不同的领域。它们都不是系统级的分布式文件系统,而是应用级的分布式文件存 储服务。
在这里插入图片描述

TFS

TFS(Taobao File System)是由淘宝开发的一个分布式文件系统,其内部经过特殊的优化处理,适用于海量的小文件存储,主要针对海量的非结构化数据,它构筑在普通的Linux机器 集群上,可为外部提供高可靠和高并发的存储访问。目前已经对外开源;

TFS采用自有的文件系统格式存储,因此需要专用的API接口去访问,目前官方提供的客户端版本有:C++/JAVA/PHP。

FastDFS

FastDFS是国人开发的一款分布式文件系统,目前社区比较活跃。如上图所示系统中存在三种节点:Client、Tracker、Storage,在底层存储上通过逻辑的分组概念,使得通过在同组内配置多个Storage,从而实现软RAID10,提升并发IO的性能、简单负载均衡及数据的冗余备份;同时通过线性的添加新的逻辑存储组,从容实现存储容量的线性扩容。

文件下载上,除了支持通过API方式,目前还提供了apache和nginx的插件支持,同时也可以不使用对应的插件,直接以Web静态资源方式对外提供下载。

目前FastDFS(V4.x)代码量大概6w多行,内部的网络模型使用比较成熟的libevent三方库,具备高并发的处理能力。

《操作和部署过程》
HDFS

Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。 Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,

后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapReduce算法的一种开源应用,是Google开创其帝国的重要基石。

GFS(Google File System)

Google公司为了满足本公司需求而开发的基于Linux的专有分布式文件系统。尽管Google公布了该系统的一些技术细节,但Google并没有将该系统的软件部分作为开源软件发布。

  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 分布式存储系统是一种通过将数据分散存储在多台机器上实现高可靠性、高性能和可扩展性的存储架构。对于给定的习题,我将从以下几个方面来回答。 首先,分布式存储系统的基本概念与原理。分布式存储系统通过将数据分散存储在多个节点上,实现将数据进行有效管理和存储的功能。它将数据存储在不同的节点上,使得数据能够充分利用分布式存储系统的优势,如容错性和负载均衡。 其次,分布式存储系统的设计和实现。分布式存储系统的设计需要考虑诸多因素,如数据一致性、数据分片、数据迁移等。实现分布式存储系统的技术主要包括数据分布算法、数据复制和一致性协议等。常见分布式存储系统包括HDFS、GlusterFS和Ceph等。 再次,分布式存储系统的应用场景。分布式存储系统广泛应用于大规模数据存储场景,如云存储、分布式文件系统等。通过将数据分散存储在多个节点上,可以充分利用节点的计算性能和存储容量,并提高系统的可靠性和性能。 最后,分布式存储系统的优势和挑战。分布式存储系统在数据存储和管理方面具有很多优势,如高可靠性、高性能和可扩展性。然而,它也面临着一些挑战,如数据一致性、数据安全性和系统维护等。为了解决这些挑战,需要采用合适的设计和实现策略。 综上所述,分布式存储系统是一种将数据分散存储在多台机器上的存储架构,它具有高可靠性、高性能和可扩展性的特点。在设计和实现分布式存储系统时,需要考虑数据一致性、数据分片和数据迁移等因素。分布式存储系统广泛应用于大规模数据存储场景,并具有很多优势和挑战。 ### 回答2: 分布式存储系统是一种将数据分布式存储在多个节点上的系统。它将大量的数据分散存储在多个独立的节点上,通过网络进行数据的读写操作。 分布式存储系统具有如下特点: 1. 高可靠性:分布式存储系统将数据存储在多个节点上,当其中的某个节点发生故障时仍可通过其他节点访问数据,从而提供了高可靠性。 2. 高扩展性:分布式存储系统可以随着需求的增加灵活地扩展存储容量,只需增加更多的节点即可,而不会对整个系统产生影响。 3. 高性能:由于数据分散存储在多个节点上,在进行数据读写操作时可以并行进行,从而提高了系统的读写性能。 4. 数据一致性:分布式存储系统通过一致性协议来确保各个节点上的数据一致性,即使在节点发生故障或者网络出现故障时也能保持数据的一致性。 5. 容错性:分布式存储系统在设计时考虑了节点的故障,通过数据的冗余备份和恢复机制来提供容错性,当某个节点发生故障时可以通过备份节点恢复数据。 6. 高可用性:由于数据的分布存储,当某个节点不可用时可以通过其他可用节点继续提供服务,从而提供了高可用性。 总的来说,分布式存储系统是一种强大而灵活的存储架构,能够满足大规模数据存储和处理的需求。它充分利用了分布式计算和网络技术,提供了高可靠性、高扩展性和高性能的存储解决方案。 ### 回答3: 分布式存储系统是一种通过在多个计算机节点上存储和管理数据的系统。相比于传统的集中式存储系统分布式存储系统具有更高的可伸缩性、可靠性和性能。 举个例子来说,假设有一个分布式存储系统由10个节点组成。当需要存储一个文件时,系统会将文件拆分成多个块,并在不同的节点上存储这些块。这样做的好处是可以提高系统的吞吐量和并发性能,在某个节点发生故障时也能够保证数据的可靠性和持续可用性。 另外,分布式存储系统还可以通过数据的复制和副本来增加系统的可靠性。例如,在上述例子中,每个块可以复制多个副本到其他的节点中,以防止某个节点的故障导致数据的不可用性。 此外,分布式存储系统还可以通过数据分片和数据冗余来提高系统的性能和可用性。通过将数据分片存储在不同的节点上,可以使数据的访问负载均衡,并提高系统的并发性能。同时,数据的冗余存储也可以在某个节点故障时提供备份数据,确保系统的可靠性。 总结起来,分布式存储系统是一种可靠、高性能的存储方案,通过将数据分布在多个节点上,并利用数据的复制、分片和冗余等技术来提高系统的可用性、性能和可靠性。同时,分布式存储系统还可以根据不同的应用场景和需求进行灵活的配置和扩展,适应不同规模和负载的存储需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清平乐的技术博客

你的鼓励是我最大创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值