分布式文件系统研究综述探讨
2018-12-25刘雪鸿上海大学
刘雪鸿 上海大学
分布式文件系统( FastDFS) 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。现就近年间分布式文件系统研究进展综述如下:
1 分布式文件系统概述
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。分布式文件系统是应用级的分布式文件存储服务系统研究领域的热点之一,且以GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等为主要系统组成部分。
2 分布式文件系统研究综述
2.1 Hadoop分布式文件系统Java流机制
布式文件系统均为Client/Server架构。数据保存在服务器端,而客户端的应用程序能够像访问本地文件系统一样访问位于远程服务器上的文件。主要包括EJB、rmi、Web Service,还有Hessian、NIO等几种类型。不同类型在扩展性、安全性强、持分布式事务处、跨语言分布、配置、无缝迁、兼容性和执行速度上有显著的差异。
2.2 元数据管理
分布式文件系统在海量数据存储领域已经有了广泛的应用,目前大多分布式系统使用的是文件数据及元数据解耦架构。其中元数据管理对于文件系统的性能有着直接的影响。随着不同类型的大规模数据分析的驱动,比如用户行为分析、搜索引擎和推荐系统,大规模数据的存储和处理的需求急剧增长。
2.3 Hadoop分布式文件系统小文件数据存储性能
基于文件类型的小文件合并算法,通过将大量小文件按文件扩展名进行简单分类处理,然后合并成大文件,有效地降低了 Namenode的内存消耗;基于文件类型的合并文件元数据二级索引算法,通过提高小文件合并大文件的映射文件的读取速度进而提高了系统整体的文件读取效率。
2.4 CEPH分布式文件系统的云盘系统
基于Ceph分布式文件系统设计核心存储模块,研究分析CephFS和MDS的实现原理并根据云盘系统架构和CFSRPC协议的定义,结合多路IO复用机制设计实现了Ceph的接入模块CCD。将云盘系统的请求分化为文件系统操作请求和管理功能操作请求,分别以CCD模块和管理功能模块来接受和处理,中间加入LVS+Keepalived的负载机制使得CCD节点和管理功能节点支持横向扩展。参考Keystone的令牌认证机制设计实现了独立认证系统。以NW.js为框架根据CFSRPC协议的定义设计实现了客户端。最后将整套云盘系统在测试环境下进行部署,完成了认证流程和云盘基本操作的测试,并对单点CCD进行了性能测试,确认整体系统能够达到公有云生产环境的性能要求。
2.5 Glusterfs架构
分布式文件系统在桌面虚拟化中的应用,GlusterFS系统的功能架构。其次,GlusterFS优化方向分析。研究其算法流程、可靠性、集群特点和优势,分析加密功能、性能优化方向,研究优化方案。再次,GlusterFS加密功能优化实现。
2.6 Clover的元数据处理关键技术
Clover的元数据处理能力随服务器的数量线性增长,增加单个服务器的元数据操作性能平均提升了5.13%~159.32%.由于名字空间管理和分布式事务的开销,多元数据服务器会导致复杂操作的性能下降,但是这种下降的幅度很小(小于10%).与HDFS相比,Clover的文件读写带宽与之接近,并能够保证在元数据服务器失效后文件系统快速恢复,适合于构建高可扩展和高可用的存储系统。在一个计算机网中有多台主机不一定都是分布式处理。倘若系统不具备动态组合及任务再指派的能力,一般作集中式处理。高级操作系统作为分布式处理的关键。在分布式系统中不再使用完整的信息,各个组成部分提供自己的状态信息,高级操作系统根据这些状态信息进行任务协调和资源再分配,各组成部分之间没有层次关系自主。
3 结束语
布式文件系统的设计基于客户机/服务器模式。一个典型的网络可能包括多个供多用户访问的服务器。对等特性允许一些系统扮演客户机和服务器的双重角色,是新推出的网络化、数字化、高可靠性、高实时性、高灵活性、高扩展性以及独创图形拼接同步技术(ESYNC)的分布式节点机图像处理系统,并在应用领域获得了显著的进步。