[发明专利]文件访问方法及系统有效
申请号: | 201180003437.5 | 申请日: | 2011-12-31 |
公开(公告)号: | CN102725755A | 公开(公告)日: | 2012-10-10 |
发明(设计)人: | 张敬亮 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 文件 访问 方法 系统 | ||
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种文件访问方法及系统。
背景技术
现有技术中,类似于可移植Unix或者Linux操作系统接口(Portable Operating System Interface for Unix/Linux;POSIX)的文件系统中,包括元数据和数据两大部分;其中元数据部分中包括文件节点(inode)信息,组成特定的数据结构(如多路搜索树等)。其中数据部分包括文件内容。POSIX文件系统能够向上层应用程序提供POSIX接口。在POSIX文件系统中的每一个目录、文件都有一个对应的文件节点(inode),文件节点中包含有文件的大小、创建修改访问时间、权限归属等信息以及文件内容在数据部分的地址信息。对于较大的文件,其在文件系统上的数据部分的分布可能是不连续的,可能会是存储介质中的几个不同的片段组成。现有技术中访问POSIX文件系统中的某个文件时,通常需要先通过POSIX接口访问元数据部分,通过搜索获取到数据部分的地址信息后,再次根据数据部分的地址信息进行搜索找到要访问的文件内容。
对于上述POSIX的文件系统存储文件的时候,当文件系统中存储的文件较多,某一要访问的文件对应的目录深度较深,访问该文件时需要按照文件存储的路径逐层访问元数据,直到访问到该要访问的文件,造成访问开销较大,访问效率较低。
发明内容
本发明实施例提供一种文件访问方法及系统,用以提供一种对基于Key-Value数据库的文件系统的访问方案,用以提高文件访问效率。
本发明实施例提供一种文件访问方法,包括:
文件系统驱动模块接收上层应用发送的第一访问请求,所述第一访问请求中携带有路径信息和要访问的值信息的类型;所述要访问的值信息的类型为内容类型或者属性类型;
所述文件系统驱动模块根据所述上层应用对应的访问接口与键值数据库的访问接口的对应关系,将所述第一访问请求转换为适用于访问所述键值数据库的第二访问请求;所述第二访问请求中携带所述路径信息和要访问的值信息的类型;
所述文件系统驱动模块向所述键值数据库的客户端发送所述第二访问请求;
所述键值数据库的客户端根据所述第二访问请求,从所述键值数据库的服务器端存储的键值数据库中查找对应的文件内容或者目录项内容或者文件属性或者目录项属性;所述键值数据库中包括键信息和所述键信息对应的两个值信息;所述键信息中包括所述路径信息对应的路径哈希值;所述两个值信息对应的类型分别为所述内容类型和所述属性类型,所述内容类型对应的所述值信息中包括所述路径信息对应的路径下的文件内容或者目录项内容;所述属性类型对应的所述值信息中包括所述路径信息对应的路径下的文件属性或者目录项属性。
本发明实施例提供一种文件访问系统,包括:
文件系统驱动模块,用于接收上层应用发送的第一访问请求,所述第一访问请求中携带有路径信息和要访问的值信息的类型;所述要访问的值信息的类型为内容类型或者属性类型;并根据所述上层应用对应的访问接口与键值数据库的访问接口的对应关系,再将所述第一访问请求转换为适用于访问所述键值数据库的第二访问请求;所述第二访问请求中携带所述路径信息和所述要访问的值信息的类型;向所述键值数据库的客户端发送所述第二访问请求;
所述键值数据库的客户端,用于根据所述第二访问请求,从所述键值数据库的服务器端存储的键值数据库中查找对应的文件内容、目录项内容、文件属性或者目录项属性;所述键值数据库中包括键信息和所述键信息对应的两个值信息;所述键信息中包括所述路径信息对应的路径哈希值;所述两个值信息对应的类型分别包括所述内容类型和所述属性类型,所述内容类型对应的所述值信息中包括所述路径信息对应的路径下的文件内容或者目录项内容;所述属性类型对应的所述值信息中包括所述路径信息对应的路径下的文件属性或者目录项属性。
本发明实施例的文件访问方法及系统,通过采用Key-Value数据库存储文件,其中Key信息中包括路径信息对应的路径哈希值,内容类型对应的Value信息中包括路径信息对应的路径下的文件内容或者目录项内容;属性类型对应的Value信息中包括路径信息对应的路径下的文件属性或者目录项属性,当对该Key-Value数据库中的文件进行访问的时候,直接根据路径信息直接获取该路径信息对应的哈希值,以及要访问的Value信息的类型,便可以直接获取对应的文件内容或者目录项内容或者文件属性或者目录项属性。相对于现有技术中POSIX的文件系统的逐层访问元数据的技术方案,访问开销较小,访问效率较高。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180003437.5/2.html,转载请声明来源钻瓜专利网。