[发明专利]文件操作方法及装置有效
申请号: | 201110399908.0 | 申请日: | 2011-12-05 |
公开(公告)号: | CN103136294B | 公开(公告)日: | 2017-04-12 |
发明(设计)人: | 褚大鹏 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京润泽恒知识产权代理有限公司11319 | 代理人: | 苏培华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 文件 操作方法 装置 | ||
技术领域
本申请涉及网络技术领域,特别是涉及一种分布式文件系统的文件操作方法及装置。
背景技术
分布式文件系统是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与其他节点相连。分布式文件系统的设计基于客户机/服务器模式,一个典型的网络可能包括多个供用户访问的服务器。
在分布式文件系统中,文件(和目录)的数量极其庞大,尤其是对于海量小文件的分布式文件系统,文件和目录的数量更为巨大。以TFS(Taobao File System,淘宝文件系统)为例,TFS用于存储淘宝网主站的数据,例如商品图片、商品描述、交易快照、社区图片等等,这些数据的一个突出特点是单个文件尺寸较小,通常不大于1MB,但是数量巨大。对于当前的这些分布式文件系统,一般都要在一个集群内支撑众多的业务,而每个业务又要服务上亿的客户,因而使得系统内的文件(和目录)的数目极其庞大,必须采用分布式集群来提供对元数据的存储以及查询和修改等操作。但是,当元数据放入集群后,对文件的操作,如把一个目录(或文件)移动到另一个目录的操作,可能要在两台服务器上才能完成。然而,元数据的特性要求高可靠性、高可用性、高一致性,这种跨服务器的一致性和原子性给元数据集群的设计带来极大挑战。
现有的可以支持海量文件的元数据集群,为了能够做到高可靠性、高可用性、高一致性,要么采用价格高昂的大内存、大处理能力的服务器,要么采用复杂的分布式协议,或者干脆在一定程度上牺牲掉一致性,但即使这样,元数据集群的设计也十分复杂,开发维护成本极高。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何能够在满足业务需求的情况下,降低元数据集群的设计复杂度和实现成本。
发明内容
本申请所要解决的技术问题是提供一种分布式文件系统的文件操作方法及装置,能够在满足业务需求的情况下,降低元数据集群的设计复杂度和实现成本。
为了解决上述问题,本申请公开了一种文件操作方法,包括:获取分布式文件系统的文件操作指令,所述分布式文件系统中至少一个服务器的根目录下设置有至少两级子目录,其中,第一级子目录包括至少一个业务子目录,第二级子目录包括至少一个用户根目录,一个所述业务子目录对应于一个业务,一个所述用户根目录对应于一个用户,一个所述业务子目录和一个所述用户根目录在其所在的服务器上的名称和级别固定,并且,一个所述用户根目录的数据完整地设置于一个服务器上;根据所述文件操作指令,使用所述业务子目录的名称和所述用户根目录的名称查找目标文件夹;对查找到的所述目标文件夹下的文件执行所述文件操作指令指定的文件操作。
优选地,所述文件操作指令中包括所述业务子目录的名称和所述用户根目录的名称。
优选地,所述文件操作指令通过以下方式获取:根据所述文件操作指令中的所述业务子目录的名称和所述用户根目录的名称,使用一致性哈希算法,确定所述业务子目录的名称和所述用户根目录的名称所在的服务器,并将所述文件操作指令发送给所述服务器;所述服务器接收并获取所述文件操作指令。
优选地,当所述文件操作指令指定对文件进行移动时,该文件在其所在的用户根目录范围内移动。
优选地,当所述文件操作指令指定对文件进行修改时,该文件所在的服务器先对存储器中的该文件进行修改,然后在缓存中对该文件进行相同的修改,或者删除该文件在所述缓存中的数据。
为了解决上述问题,本申请还公开了一种文件操作装置,包括:获取模块,用于获取分布式文件系统的文件操作指令,所述分布式文件系统中至少一个服务器的根目录下设置有至少两级子目录,其中,第一级子目录包括至少一个业务子目录,第二级子目录包括至少一个用户根目录,一个所述业务子目录对应于一个业务,一个所述用户根目录对应于一个用户,一个所述业务子目录和一个所述用户根目录在其所在的服务器上的名称和级别固定,并且,一个所述用户根目录的数据完整地设置于一个服务器上;查找模块,用于根据所述文件操作指令,使用所述业务子目录的名称和所述用户根目录的名称查找目标文件夹;操作模块,用于对查找到的所述目标文件夹下的文件执行所述文件操作指令指定的文件操作。
优选地,所述文件操作指令中包括所述业务子目录的名称和所述用户根目录的名称。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110399908.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:水轮机驱动离心泵
- 下一篇:页面元素搜索显示方法及装置