预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共21页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)国家知识产权局(12)发明专利申请(10)申请公布号CN115963984A(43)申请公布日2023.04.14(21)申请号202211234948.4(22)申请日2022.10.10(30)优先权数据17/4979932021.10.11US(71)申请人国际商业机器公司地址美国纽约(72)发明人S·K·杰拉德-邓恩(74)专利代理机构北京市中咨律师事务所11247专利代理师于静刘薇(51)Int.Cl.G06F3/06(2006.01)权利要求书2页说明书11页附图7页(54)发明名称用于存储数据结构的方法和系统(57)摘要本发明涉及用于存储数据结构的方法和系统。在一种方法中,处理器将数据结构分割成多个初始块。对于多个初始块中的每一个,处理器基于识别在相应的块内的在数据结构中唯一的位序列,确定块密钥。处理器将数据结构重新分割成多个最终块,其中,分割与所识别的位序列的位置相对应。CN115963984ACN115963984A权利要求书1/2页1.一种计算机实现的方法,包括:将数据结构分割成多个初始块;对于所述多个初始块中的每一个,基于识别在相应的块内的在所述数据结构中唯一的位序列,确定块密钥;以及将所述数据结构重新分割成多个最终块,其中,分割与所识别的位序列的位置相对应。2.根据权利要求1所述的计算机实现的方法,其中,识别所述位序列包括:从所述相应的块的第一个位到所述相应的块的最后一个位顺序扫描所述数据结构,以识别在所述块内的在所述数据结构中是唯一的并且最接近所述第一个位的位序列。3.根据权利要求1所述的计算机实现的方法,还包括:接收包括对所述数据结构做出的改变的改变记录;合并所述多个最终块以获得所述数据结构;基于所述改变记录,更新所述数据结构;以及将更新后的数据结构分割成多个更新后的最终块,其中,分割与所识别的位序列的位置相对应。4.根据权利要求1所述的计算机实现的方法,还包括:对于所述多个最终块中的每一个,确定相应的最终块的大小大于预定上限阈值;以及响应于确定所述相应的最终块的大小大于所述预定上限阈值,分割所述相应的最终块。5.根据权利要求1所述的计算机实现的方法,还包括:对于所述多个最终块中的每一个,确定相应的最终块的大小小于预定下限阈值;以及响应于确定所述相应的最终块的大小小于所述预定下限阈值,将所述相应的最终块与相邻的最终块合并。6.根据权利要求1所述的计算机实现的方法,还包括对于所述多个最终块中的每一个:计算相应的最终块的数据的散列;以及将所述散列和分隔符附加到与所述相应的最终块相对应的所述块密钥。7.根据权利要求1所述的计算机实现的方法,还包括:压缩所述多个最终块中的每一个;以及将多个压缩后的最终块和相关联的块密钥存储在服务器上。8.根据权利要求1所述的计算机实现的方法,其中,所述数据结构选自包括以下项的组:JavaScript对象表示法JSON数据结构,富文本格式RTF文件,以及代码文件。9.根据权利要求1所述的计算机实现的方法,还包括:将所述块密钥与多个本地存储的块进行比较以识别没有相关联的本地存储的块的块密钥;以及加载与所识别的块密钥相关联的相应的最终块。10.根据权利要求1所述的计算机实现的方法,还包括:合并所述多个最终块以获得所述数据结构。11.根据权利要求1所述的计算机实现的方法,还包括:取得与所述数据结构相关联的所述多个最终块和对应的块密钥,其中:所述最终块的分割与在所述数据结构中唯一的位序列的位置相对应;以及2CN115963984A权利要求书2/2页所述块密钥是基于所述位序列;将所述块密钥与多个本地存储的块进行比较以识别没有相关联的本地存储的块的块密钥;以及加载与所识别的块密钥相关联的最终块。12.一种计算机程序产品,包括:一个或多个计算机可读存储介质,以及共同存储在所述一个或多个计算机可读存储介质上的程序指令,所述程序指令包括用于执行根据权利要求1至11中任一项所述的方法的程序指令。13.一种计算机系统,包括:一个或多个计算机处理器,一个或多个计算机可读存储介质,以及共同存储在所述一个或多个计算机可读存储介质上以用于由所述一个或多个计算机处理器中的至少一个计算机处理器执行的程序指令,所述程序指令包括用于执行根据权利要求1至11中任一项所述的方法的程序指令。3CN115963984A说明书1/11页用于存储数据结构的方法和系统技术领域[0001]本发明涉及数据结构领域,并且更具体地,涉及基于识别在每个块内的在数据结构中唯一的位序列来将数据结构分割成多个块。背景技术[0002]许多应用用于编辑非常大的数据结构,通常大于几百兆字节。这样的数据结构可以是JavaScript对象表示法(JSON)文件,富文本格式(RTF)文件,或代码。例如,现代的基于网络的编辑器应用用于编辑非常大的数