[发明专利]使用键值存储系统简化文件系统操作的系统、方法和设备有效
申请号: | 201880061222.0 | 申请日: | 2018-07-16 |
公开(公告)号: | CN111108493B | 公开(公告)日: | 2023-06-20 |
发明(设计)人: | 邱晟;刘飞;李舒 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/16;G06F16/188 |
代理公司: | 北京清源汇知识产权代理事务所(特殊普通合伙) 11644 | 代理人: | 冯德魁;张艳梅 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 使用 键值 存储系统 简化 文件系统 操作 系统 方法 设备 | ||
1.一种使用键值存储系统简化文件系统操作的方法,用于实现为来自KVFS库或内核模块的API调用,包括:
从应用程序接收至少一文件操作,所述文件操作包括文件路径和所请求的操作,其中,所述至少一文件操作包括事务操作;
基于所述文件操作生成键值操作,所述键值操作包括包含文件路径的键;
在键值存储引擎执行所述键值操作;
从所述键值存储引擎接所述收键值操作的结果;
根据所述键值操作的结果生成结果值;并将所述结果值返回所述应用程序;
其中,所述键值操作返回结果为存储在事务操作的结果缓存内的结果,所述事务操作为以下至少一种操作:要执行的操作的数组、文件数组、缓存数组和原子标记,所述操作数组包括文件操作的列表,所述文件数组包括与操作相对应的文件的列表,所述缓存数组包括用于存储相应操作的结果的空数组,所述原子标记包括指示是否应原子执行事务的布尔标记。
2.根据权利要求1所述的方法,其中,所述至少一文件操作包括写操作,所述写操作包括要写入的多个字节,
并且其中,基于所述文件操作生成键值操作还包括:使用所述文件路径作为键和字节数作为值来生成PUT请求。
3.根据权利要求1所述的方法,其中,所述事务操作包括多个子操作,
其中,基于所述文件操作生成键值操作还包括基于子操作生成包含多个键值操作的键值事务,
其中,在键值存储引擎执行键值操作包括执行所有键值操作或不执行任何键值操作。
4.根据权利要求3所述的方法,进一步包含在检测到执行所述多个子操作之一时的错误时回滚所述多个子操作。
5.根据权利要求1所述的方法,其中,所述至少一文件操作包括多命令操作,所述多命令操作包括文件路径的数组,
并且其中,基于所述文件操作生成键值操作还包括为文件路径数组中的每个文件路径生成多个键值指令,所述多个键值指令是基于所述多重命令操作的类型而生成的。
6.如权利要求5所述的方法,其特征在于,基于所述键值操作的结果生成结果值包括用所述多个键值指令中的每一个的结果填充结果缓存。
7.根据权利要求1所述的方法,其中,所述至少一文件操作包括搜索操作,所述搜索操作包括目录列表、文件属性列表以及查询结果缓存,并且其中所述方法还包括:
识别响应于目录的文件列表的多个文件路径;和
基于多个文件路径和文件属性列表来生成元数据键。
8.根据权利要求1所述的方法,其中,在基于所述文件操作生成键值操作之前,所述方法还包括:验证所述应用程序具有访问由所述文件路径标识的文件的权限。
9.如权利要求1所述的方法,其特征在于,还包括基于所述文件操作对由所述文件路径表示的文件执行文件系统操作,其中,基于所述文件操作执行文件系统操作包括:向底层分层文件系统发出系统调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201880061222.0/1.html,转载请声明来源钻瓜专利网。