[发明专利]一种全分布式文件索引及协作编辑机制的实现方法有效
| 申请号: | 201510728245.0 | 申请日: | 2015-10-30 |
| 公开(公告)号: | CN105404653B | 公开(公告)日: | 2019-03-26 |
| 发明(设计)人: | 赵雷彧;李振华;肖贺;朱彤 | 申请(专利权)人: | 无锡清华信息科学与技术国家实验室物联网技术中心 |
| 主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/182 |
| 代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆;胡彬 |
| 地址: | 214135 江苏省无锡市新*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | 本发明公开一种全分布式文件索引及协作编辑机制的实现方法,包括:将文件夹信息采用Key‑value字典文件形式存储于Swift存储介质中,对文件夹操作变为文件夹索引文件修改操作;采用补丁提交方式进行文件更新;在API和Swift间建立中间层,接收提交的补丁文件;中间层负责合并向该节点提交的补丁;所有中间层节点协同在分布式线段树上合并得到合并所有更改的补丁;将原文件与补丁合并作为原文件最终版本。本发明既提供了分布式、高度稳定的文件索引系统,又统一了文件操作与文件夹操作,提出了一套离线协作编辑机制,弥补了Openstack Swift为追求完全分布式而牺牲的文件操作原子性及不良的文件索引支持。 | ||
| 搜索关键词: | 一种 分布式 文件 索引 协作 编辑 机制 实现 方法 | ||
【主权项】:
1.一种全分布式文件索引及协作编辑机制的实现方法,其特征在于,包括如下步骤:S101、将文件夹信息采用Key‑value字典文件形式存储于Swift存储介质中,对文件夹的操作变为文件夹索引文件的修改操作;目录文件将转化为由该目录下文件/文件夹名(Key)指向对应文件/文件夹索引在存储介质中的真实文件名(Value)的字典,并对Key排序后按一定的格式转换为文件;S102、采用补丁提交方式进行文件更新;所述补丁文件在时间戳的配合下,与补丁合并运算满足结合律、交换律,即组成阿贝尔半群;原文件和补丁文件合并后得到新版本的目标文件;一切满足阿贝尔半群的补丁格式和合并运算均适用于步骤S102;S103、在使用者API和Swift间建立中间层,接收提交的补丁文件;所述中间层部署于Openstack Swift的Proxy节点并承接原本应该调用Swift API的HTTP请求,并根据对应业务逻辑代为调用原Swift API并将调用结果返回给中间层访问者;其业务逻辑包括但不限于:一、读取某个文件内容的请求,中间层将向Swift发起读取与总补丁合并后的文件的请求;若该文件不存在,则发起获取原文件请求;最后返回请求结果以及文件;二、修改/增加某文件内容的请求,中间层将向Swift提交补丁文件,并着手合并以得到总补丁文件;三、访问某文件夹的文件的请求,中间层将向Swift提交查询请求,读取根目录索引文件并从中获取下一级目录的文件名,而后读取下一级目录索引文件,依次递推寻找到目标文件在存储介质中的文件名;四、增加/删除某文件夹的请求,中间层将向Swift提交修改索引文件的补丁;S104、中间层负责合并向该节点提交的补丁;具体包括:某节点部署的中间层在提交补丁文件后,开始将针对该文件通过该节点提交的全部补丁文件进行合并,尚未合并的内部补丁由单项链表组成,合并线程从链表上任意项着手,将其合并并将链表指针指向下一个文件;其中,链表指针信息由Swift的文件Metadata存储;S105、所有的中间层节点协同在分布式线段树上合并得到合并所有更改的补丁;具体包括:维护一个分布式线段树,树上节点为其子树树根节点对应的中间层提交补丁的总和;当中间层节点内部补丁更新时,沿分布式线段树自底向上更新;所述分布式线段树为一棵拥有特殊编号规则的二叉树,树中叶节点对应着不同的中间层节点,非叶节点为虚拟节点,用于汇总其子节点的补丁信息;每一个非叶节点的汇总信息均为其左右子节点的补丁之和;所述分布式线段树的编号公式如下:一、对于中间层节点n∈Z≥0,对应的树上叶节点编号为i=(n<<1)+1;二、对于非叶节点i,其左右子节点及父节点分别编号为parent(i)=(i^(i&‑i))|((i&‑i)<<1)left(i)=i‑((i&‑i)>>1)right(i)=i+((i&‑i)>>1其中>><<^&|分别代表逻辑右移、逻辑左移、按位异或、按位与、按位或;S106、将原文件与该补丁合并作为原文件最终版本;具体包括:将分布式线段树树根的总补丁与原文件进行合并,而后得到最新版文件存储于Swift用于读取。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡清华信息科学与技术国家实验室物联网技术中心,未经无锡清华信息科学与技术国家实验室物联网技术中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510728245.0/,转载请声明来源钻瓜专利网。
- 上一篇:抗微生物组合物及应用
- 下一篇:一种壳聚糖缩硫代氨基脲衍生物及其制备方法





