分布式文件系统技术方案

技术编号:20763343 阅读:31 留言:0更新日期:2019-04-03 14:08
本发明专利技术提供一种分布式文件系统。本发明专利技术的分布式文件系统在FastDFS模块的基础上增加了Redis集群,FastDFS模块的客户端获取写入文件对应的文件编码,在Redis集群中存储一文件属性,文件属性包括与写入文件对应的文件编码及写入文件的文件名称,从而在进行文件下载时,客户端依据下载文件的文件名称访问Redis集群中存储的文件属性,获取与下载文件的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码对与该文件编码对应的存储器中存储的对应文件进行下载,利用FastDFS模块满足以小文件居多且需要支持追加写入的应用场景的同时,利用Redis集群实现高效的类POSIX接口,提升系统的性能。

【技术实现步骤摘要】
分布式文件系统
本专利技术涉及计算机
,尤其涉及一种分布式文件系统。
技术介绍
计算机通过文件系统管理、存储数据,而信息爆炸时代中人们可以获取的数据成指数倍的增长,单纯通过增加硬盘个数来扩展计算机文件系统的存储容量的方式,在容量大小、容量增长速度、数据备份、数据安全等方面的表现都差强人意。分布式文件系统(DistributedFileSystem)由于支持分布式部署,且能够提供应用程序编程接口(API)供应用透明访问,可以有效解决数据的存储和管理难题,克服海量文件存取时大规模高并发访问时产生的磁盘I/O性能瓶颈。分布式文件系统将固定于某个地点的某个文件系统,扩展到任意多个地点/多个文件系统,众多的节点组成一个文件系统网络。每个节点可以分布在不同的地点,通过网络进行节点间的通信和数据传输。人们在使用分布式文件系统时,无需关心数据是存储在哪个节点上、或者是从哪个节点从获取的,只需要像使用本地文件系统一样管理和存储文件系统中的数据。常见的开源的分布式文件系统中,有的分布式文件系统支持可移植操作系统(POSIX)接口的,但不满足电信计费业务使用场景等以小文件居多且需要支持追加写入的应用场景,例如HDFS,有的分布式文件系统满足以小文件居多且需要支持追加写入的要求,但不支持POSIX接口,例如FsatDFS,需要提供同时满足以小文件居多且需要支持追加写入的应用场景及支持POSIX接口的分布式文件系统。另外,对于分布式文件系统来说,往往涉及到诸多的访问用户,基于数据安全的考量,需要针对访问用户进行用户及权限管理以进行数据隔离,并且其实现方案需要与现行的linux下的用户及权限管理机制尽量一致,以降低用户的学习成本。
技术实现思路
本专利技术的目的在于提供一种分布式文件系统,能够在满足以小文件居多且需要支持追加写入的应用场景的基础上,提供高效的POSIX接口。为实现上述目的,本专利技术提供一种分布式文件系统,包括FastDFS模块及Redis集群;所述FastDFS模块包括与Redis集群连接的客户端、与客户端连接的第一追踪器以及与客户端及第一追踪器均连接的多个存储器组;每一存储器组均包括多个相连接的存储器;进行文件写入时,所述客户端接收写入文件并向第一追踪器传输写入请求,所述第一追踪器在接收到写入请求后选定一存储器组中的一个存储器并产生与其选定的存储器对应的选择结果至客户端,客户端依据选择结果将文件存入第一追踪器选定的存储器中,第一追踪器选定的存储器生成与其自身以及写入文件均对应的文件编码,客户端获取该文件编码并在Redis集群中存储一文件属性,所述文件属性包括与写入文件对应的文件编码及写入文件的文件名称;进行文件下载时,所述客户端依据下载文件的文件名称访问Redis集群中存储的文件属性,获取与下载文件的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码对与该文件编码对应的存储器中存储的对应文件进行下载。所述客户端在Redis集群中存储文件属性的同时存储与写入文件的文件名称对应的目录列表信息。进行文件下载时,所述客户端依据待操作文件的目录列表信息访问Redis集群中存储的目录列表信息获取与待操作文件的目录列表信息对应的待操作文件的文件名称。所述第一追踪器在接收到写入请求后选定多个存储器组中剩余容量最多的一个中的一存储器。所述文件属性还包括可操作用户组ID、可操作用户ID以及与每一可操作用户ID对应的权限操作内容;所述客户端接收当前用户提供的文件名称、待操作内容、当前用户的用户组ID、当前用户的用户ID时,访问Redis集群中存储的文件属性,判断当前用户的用户组ID是否为与当前用户提供的文件名称位于同一文件属性内的可操作用户组ID,若否则拒绝用户操作,若是则判断当前用户的用户ID是否为与当前用户提供的文件名称位于同一文件属性内的可操作用户ID,若否则拒绝用户操作,若是则判断待操作内容是否与当前用提供的文件名称所在的文件属性内当前用户的用户ID对应的权限操作内容一致,若否则拒绝用户操作,若是则所述客户端获取与当前用户提供的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码查找与该文件编码对应的存储器中存储的对应文件作为待操作文件,允许当前用户对该待操作文件进行与待操作内容一致的操作。所述权限操作行为为读操作、写操作及执行操作中的一种,当前用户提供的操作行为为读操作、写操作及执行操作中的一种。所述FastDFS模块还包括第二追踪器,多个存储器组均与第二追踪器连接。所述分布式文件系统还包括前台模块;所述前台模块包括可视化前台、与可视化前台连接的数据库管理单元,所述数据管理单元经采集接口与第二追踪器连接,所述数据管理单元与Redis集群连接;所述可视化前台接收到文件属性修改指令后将文件属性修改指令传输至数据管理单元,所述数据管理单元依据文件属性修改指令对Redis集群中存储的相应的文件属性进行修改;所述可视化前台接收到目录列表信息修改指令后将目录列表信息修改指令传输至数据管理单元,所述数据管理单元依据目录列表信息修改指令对Redis集群中存储的相应的目录列表信息进行修改;所述可视化前台接收到监控指令后将监控指令传输至数据管理单元,所述数据管理单元接收到监控指令后通过第二追踪器对多个存储器组进行监控获取监控结果并传输至可视化前台,由可视化前台对监控结果进行可视化显示。所述Redis集群包括多个相连接的Redis单元。所述文件编码为采用Base进行编码的数据编码。本专利技术的有益效果:本专利技术的分布式文件系统在FastDFS模块的基础上增加了Redis集群,FastDFS模块的客户端获取写入文件对应的文件编码,在Redis集群中存储一文件属性,文件属性包括与写入文件对应的文件编码及写入文件的文件名称,从而在进行文件下载时,客户端依据下载文件的文件名称访问Redis集群中存储的文件属性,获取与下载文件的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码对与该文件编码对应的存储器中存储的对应文件进行下载,利用FastDFS模块满足以小文件居多且需要支持追加写入的应用场景的同时,利用Redis集群实现高效的类POSIX接口,提升系统的性能。附图说明为了能更进一步了解本专利技术的特征以及
技术实现思路
,请参阅以下有关本专利技术的详细说明与附图,然而附图仅提供参考与说明用,并非用来对本专利技术加以限制。附图中,图1为本专利技术的分布式文件系统的结构示意图。具体实施方式为更进一步阐述本专利技术所采取的技术手段及其效果,以下结合本专利技术的优选实施例及其附图进行详细描述。请参阅图1,本专利技术提供一种分布式文件系统,包括FastDFS模块10及Redis集群20。所述FastDFS模块10包括与Redis集群20连接的客户端11、与客户端11连接的第一追踪器12以及与客户端11及第一追踪器12均连接的多个存储器组13。每一存储器组13均包括多个相连接的存储器131。进行文件写入时,所述客户端11接收写入文件并向第一追踪器12传输写入请求,所述第一追踪器12在接收到写入请求后选定一存储器组13中的一个存储器131并产生与其选定的存储器131对应的选择结果至客户端11,客户端11依据选择结果将文件存入第一追踪器12选定的存储器131中,第一追踪器12选定的本文档来自技高网
...

【技术保护点】
1.一种分布式文件系统,其特征在于,包括FastDFS模块(10)及Redis集群(20);所述FastDFS模块(10)包括与Redis集群(20)连接的客户端(11)、与客户端(11)连接的第一追踪器(12)以及与客户端(11)及第一追踪器(12)均连接的多个存储器组(13);每一存储器组(13)均包括多个相连接的存储器(131);进行文件写入时,所述客户端(11)接收写入文件并向第一追踪器(12)传输写入请求,所述第一追踪器(12)在接收到写入请求后选定一存储器组(13)中的一个存储器(131)并产生与其选定的存储器(131)对应的选择结果至客户端(11),客户端(11)依据选择结果将文件存入第一追踪器(12)选定的存储器(131)中,第一追踪器(12)选定的存储器(131)生成与其自身以及写入文件均对应的文件编码,客户端(11)获取该文件编码并在Redis集群(20)中存储一文件属性,所述文件属性包括与写入文件对应的文件编码及写入文件的文件名称;进行文件下载时,所述客户端(11)依据下载文件的文件名称访问Redis集群(20)中存储的文件属性,获取与下载文件的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码对与该文件编码对应的存储器(13)中存储的对应文件进行下载。...

【技术特征摘要】
1.一种分布式文件系统,其特征在于,包括FastDFS模块(10)及Redis集群(20);所述FastDFS模块(10)包括与Redis集群(20)连接的客户端(11)、与客户端(11)连接的第一追踪器(12)以及与客户端(11)及第一追踪器(12)均连接的多个存储器组(13);每一存储器组(13)均包括多个相连接的存储器(131);进行文件写入时,所述客户端(11)接收写入文件并向第一追踪器(12)传输写入请求,所述第一追踪器(12)在接收到写入请求后选定一存储器组(13)中的一个存储器(131)并产生与其选定的存储器(131)对应的选择结果至客户端(11),客户端(11)依据选择结果将文件存入第一追踪器(12)选定的存储器(131)中,第一追踪器(12)选定的存储器(131)生成与其自身以及写入文件均对应的文件编码,客户端(11)获取该文件编码并在Redis集群(20)中存储一文件属性,所述文件属性包括与写入文件对应的文件编码及写入文件的文件名称;进行文件下载时,所述客户端(11)依据下载文件的文件名称访问Redis集群(20)中存储的文件属性,获取与下载文件的文件名称位于同一文件属性内的文件编码,依据获取到的文件编码对与该文件编码对应的存储器(13)中存储的对应文件进行下载。2.如权利要求1所述的分布式文件系统,其特征在于,所述客户端(11)在Redis集群(20)中存储文件属性的同时存储与写入文件的文件名称对应的目录列表信息。3.如权利要求2所述的分布式文件系统,其特征在于,进行文件下载时,所述客户端(11)依据待操作文件的目录列表信息访问Redis集群(20)中存储的目录列表信息获取与待操作文件的目录列表信息对应的待操作文件的文件名称。4.如权利要求1所述的分布式文件系统,其特征在于,所述第一追踪器(12)在接收到写入请求后选定多个存储器组(13)中剩余容量最多的一个中的一存储器(131)。5.如权利要求1所述的分布式文件系统,其特征在于,所述文件属性还包括可操作用户组ID、可操作用户ID以及与每一可操作用户ID对应的权限操作内容;所述客户端(11)接收当前用户提供的文件名称、待操作内容、当前用户的用户组ID、当前用户的用户ID时,访问Redis集群(20)中存储的文件属性,判断当前用户的用户组ID是否为与当前用户提供的文件名称位于同一文...

【专利技术属性】
技术研发人员:汪东升丁权肖东升佘栋柱陈友
申请(专利权)人:深圳天源迪科信息技术股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1