许多人很容易混合分布式存储和分布式文件系统的概念。我首先做一个概念梳理:
分布式存储的范围非常宽。例如,NFS尽管仅用于用于目录共享的网络文件系统,但它也是分布式存储范围。系统CEPHF还包括CEPH分布式对象存储,它们都是分布式存储范围。
分布式文件系统(DFS)的最关键功能是它模拟本地文件系统的目录级别。这在虚拟目录中文件的移动中具有良好的优势。首先,这个优势是无法完成分布式对象存储。
让我们谈谈数据可靠性问题。副本因子是3份。这被用作许多DFS系统中的默认副本数。这只是数据可靠性的策略。通过3份副本的形式,它可以增强数据可靠性,并且本质上是自然界的。它是提高分布式环境数据的容错耐受性率,但是3副本的最大问题是空间。DFS群集的空间利用率仅为33.3%。如此低的利用率显然不符合某些情况,例如长期冷数备份。
因此,是否有更好的使用DFS的方法?有当前的成熟方案是删除代码(EC冗余),类似于RAID5,RAID6。
让我们以分布式文件系统glusterfs来探索其原理,以查看其如何通过转弯代码解决它:
首先,当数据写入数据时,将其分为n个块(块),然后将每个块切成n(条纹)。如果分布式环境具有三个存储节点(砖),则将条带切成2个2块(块),然后根据这两个块计算1个学校检查块,然后将三个块存储在3个砖块中。数据集是如此旋转反过来,将学校检查块的位置存储在不同的砖块上,以使学校检查块的分配可以更加统一。
其次,当从文件中读取数据时,每次仅从两个砖块中取一个块。如果这两个块是数据块,则成功地在块中获取数据栏。如果一个是验证块,那么您可以通过学校检查块和一个数据块来计算另一个数据块,以完成数据栏的组合。在这种情况下,即使三个砖头节点有一个砖头,其他两个砖可以通过学校测试代码计算来完成数据恢复。这是使用转弯代码技术glusterfs冗余数据的原理。
这样,我们必须以3副本的50%和33.3%的多复制模式节省空间,这可以节省至少66.7%的磁盘利用率。但是,问题是CPU计算特别消耗。上述阅读情况,必须计算出读取数据的三分之二。因此,ISA -L基础函数库由Intel CPU启动,可用于改善学校默认代码algorithm.under normal的编码性能情况,EC冗余策略用于备份冷数据,即不经常访问,但必须在线存储以准备查询数据。
除了磁盘利用率外,多复制方法绝对是使用空间交换效率的最佳方法。绩效注意事项没有问题。
唯一要注意的是GlusterFS是分散的DFS体系结构。文件目录的管理操作不像其他集中式DFS架构那么容易。例如,Hadoop HDFS体系结构基于Namenode的主节点。通过元数据的操作,每个节点都可以实现。身体变化的变化。
尽管HDFS也具有EC解决方案,但对于GlusterFS没有灵活且方便的EC策略。glusterfs可以轻松地在同一集群中形成ES策略和其他策略的共享。
传统的分布式文件管理对元数据具有很高的依赖。HDFS的大量数据存储节点数据座需要依靠元数据服务Namenode的统一管理。Moosefs的大量数据存储节点块服务器需要依靠元数据服务MFS Masters,任何客户端,任何客户端来启动数据存储节点的写作和查询,他们需要从元数据服务节点获得路径,或获得写作的分配。进入管道。
依赖元数据服务的非常突出的问题是,元数据服务不能挂起。一旦元数据悬挂,整个集群就会停止。由单点故障造成的SO称为灾难。
因此,HDFS将高可用性(HA)架构引入了Namenode,这等同于双节点的主要关系。中间元数据需要QJM机制来确保同步。ZKFC服务监视主节点,NN备用,日记集群,ZKFC监视双节点,Zookeeper群集,服务或五个字符的群集的状态,以确保元数据体系结构的高可用性,这非常复杂。
Moosefs甚至仅存在于高版本的商业版本中,但仅在开源版本中采用MySQL的主要机制。一个MFS主人连接多个MFS Metalogger。它仅意识到元数据的主要副本以满足大师的停机时间。达到故障转移的可靠性。因此,MFS主人被挂断了,群集必须不好。
我们已经看到,由于其对元数据的高度依赖,分布式文件系统对高度可用的环境形成了很高的需求。高可用性环境会导致部署复杂性,甚至简单地收费。
所以有更好的方法吗?这个问题是GlusterFS相对独特的,直接放弃了传统分布式文件系统的元数据集中管理。每个人都认为,为什么我们可以在成千上万台机器的集群上构建虚拟文件目录表格?这是因为集群元数据的组织和管理。我们阅读的目录实际上只是内存中的组织树结构。
作为Glusterfs,它直接废除了元数据集中管理的体系结构,但使用了更高级的分散式体系结构。任何节点是相等的。每个节点的目录属性存储自己的元数据。每个人都通过共识机制,而不是管理机制,那么客户只需要遵循共识机制即可访问集群的数据节点。可以这样做。据说目前,客户是母亲和爸爸,而且他的设计非常沉重。数据读取,写作,查询和组织管理是一个。
GlusterFS使用逻辑概念来适应不同的分布式体系结构,例如:分布式卷,集群的不同存储节点,但是同一路径的目录在许多段中。当文件写入文件时,客户端会划分文件的哈希值,您可以确定该文件应存储的路径目录属于群集节点的哈希范围,然后将客户端存储在节点上的目录中。同一路径目录的分布。
glusterfs还支持该副本的副本,该副本是两对文件副本模式,甚至支持嵌套模式,例如分布式副本卷。简而由于单点故障,高度可用的架构高度取决于传统的分布式文件系统。
在没有权力下放的情况下,也存在权力下放的问题。在文件的操作管理中,它始终不如集中和灵活,并且元数据的操作倾向于身体行为。在文件操作中,使用不同节点处的分布式文件链接来解决头皮头皮方法通过策略的建筑缺陷。当然,这完全可以理解,没有完美的事情。
但是Glusterfs是一个分散的体系结构。这个优势是使所有节点的重要级别弄平。然后,没有节点是最重要的问题。任何节点都可能失败,但不会影响整个集群的高可靠性。这是分散体系结构的最有利传统。
如果您认为这篇文章写得很好,那就像它一样分享!