1.分布式文件系统概述
分布式文件系统是一种通过网络实现文件在多台主机上进行分布式存储的文件系统。
普通的文件系统只需要单个计算机节点就可以完成文件的存储和处理,而分布式文件系统把文件分成一定量的数据块,分布存储到多个计算机节点上,成千上万的计算机节点构成计算机集群。而目前分布式文件系统所采用的计算机集群大都是由普通的硬件构成的,这就大大降低了硬件上的开销。
集群中的计算机节点存放在机架(Rack)上,每个机架可以存放8到64个节点,同一机架上的不同节点之间通过网络互连(常采用吉比特以太网),多个不同机架之间采用另一级网络或交换机互连。
吉比特以太网:俗称千兆网,即以每秒钟1G地速率进行传输的传输术语。
在Windows,LInux系统中,文件系统一般会把磁盘空间划分为没512字节一组,称为“磁盘块”,它是文件系统读写操作的最小单位。
与普通文件系统类似,分布式文件系统也采用了块的概念,但是由于它存储的数据量很大,所以它的块比文件系统的块大很多,如HDFS默认一个块的大小是64MB(可以修改默认值),文件在被存储时会被系统分成若干个块进行存储,这样就可以充分的利用计算机集群,使得其可以保存超大规模的数据。与普通文件系统不同的是,在分布式文件系统中,如果一个文件的大小小于一个块的大小,它并不占用整个块的存储空间。
分布式文件系统在物理结构上是有计算机集群中的多个节点构成的。这种节点主要分为两类,“名称节点”(或者叫“主节点”)与“数据节点”(或者叫“从节点”)。名称节点负责文件和目录的创建,删除和重命名等,同时管理者数据节点和文件块的映射关系。数据节点则负责存储数据的存储和读取。当客户端读文件时,先访问名称节点,名称节点会返回请求的文件所在的位置,客户端进而在相应的位置读取所需文件块。写文件时,客户端向名称节点发送写入请求,名称节点会返回分配位置,然后客户端把数据直接写入相应的数据节点。数据节点也要根据名称节点的命令创建,删除数据块和冗余复制。
原文:https://www.cnblogs.com/wobu/p/8822847.html