分布式简介
分布式文件系统(Distributed File System) 是指文件系统管理的物理存储资源不一
定直接连接在本地节点上,而是通过计算机网络与节点相连。简单来说就是把一些分散的(分
布在局域网内各个计算机上) 共享文件夹, 集合到一个文件夹内(虚拟共享文件夹)。 对于
用户来说, 要访问这些共享文件夹时, 只要打开这个虚拟共享文件夹, 就可以看到所有链接
到虚拟共享文件夹内的共享文件夹, 用户感觉不到这些共享文件是分散于各个计算机上的。
分布式文件系统的好处是集中访问、 简化操作、 数据容灾、 提高文件存取性能
分布式文件系统优势
- 集中访问
- 简化操作
- 数据容灾
- 提高文件存取性能
MFS原理
MFS 是一个具有容错性的网络分布式文件系统, 它把数据分散存放在多个物理服务器上,
而呈现给用户的则是一个统一的资源。
MFS文件系统的组成
- 元数据服务器(Master): 在整个体系中负责管理文件系统, 维护元数据
- 元数据日志服务器(MetaLogger): 备份 Master 服务器的变化日志文件, 文件类型为
changelog_ml.*.mfs。 当 Master 服务器数据丢失或者损坏,
可以从日志服务器中取得文件恢复 - 数据存储服务器(Chunk Server): 真正存储数据的服务器。 存储文件时, 会把文件分块保存,
并在数据服务器之间复制, 数据服务器越多, 能使用的“容量”
就越大, 可靠性就越高, 性能越好。 - 客户端(Client): 可以像挂载 NFS 一样挂载 MFS 文件系统, 其操作是相同的。
MFS 读取数据的处理过程
- 客户端向元数据服务器发出读请求。
- 元数据服务器把所需数据存放的位置(Chunk Server 的 IP 地址和 Chunk 编号) 告知客户端。
- 客户端向已知的 Chunk Server 请求发送数据。
- Chunk Server 向客户端发送数据。
MFS 写入数据的处理过程
- 客户端向元数据服务器发送写入请求。
- 元数据服务器与 Chunk Server 进行交互(只有当所需的分块 Chunks 存在的时候才进行这个交互),
但元数据服务器只在某些服务器创建新的分块 Chunks,创建成功后由Servers 告知元数据服务器操作成功 - 元数据服务器告知客户端, 可以在哪个 Ch