键值对的数据结构的构建方法、系统、设备及存储介质技术方案

技术编号:35512362 阅读:24 留言:0更新日期:2022-11-09 14:27
本发明专利技术公开了一种键值对的数据结构的构建方法、系统、设备及存储介质,构建方法包括:生成与多个键值对对应的无向图,无向图包含多个顶点和多条插入边;若无向图存在环状图,则析出无向图的无环图和至少一个分离边;将多个键值对划分得到与无环图对应的第一键集合以及与至少一个分离边对应的第二键集合;对第一键集合及对应的值进行编码得到解向量;基于第二键集合和随机函数构建得到第一OKVS;对至少一个分离边进行顶点向量扩展并构建得到第二OKVS;根据解向量、第一OKVS和第二OKVS组合构建得到多个键值对的总OKVS。本申请针对性地制造线性独立性,提高解方程组的效率及最终OKVS的空间利用率。的空间利用率。的空间利用率。

【技术实现步骤摘要】
键值对的数据结构的构建方法、系统、设备及存储介质


[0001]本专利技术属于数据处理领域,特别涉及一种键值对的数据结构的构建方法、系统、设备及存储介质。

技术介绍

[0002]OKVS(oblivious key

value store,不经意键值存储)是指能够在隐藏key(健)和value(值)内容的前提下保留key

vakue映射关系的一种数据结构,比如有一组键值对{(x1,y1),(x2,y2),(x3,y3)},那么存在一个OKVS函数f,使得f(x1)=y1,f(x2)=y2,f(x3)=y3,并且对于其他的键f(x_other)为随机数。OKVS是一种安全存储键值对的数据结构概念,并且其直接或者间接地应用于例如多方安全求交等密码协议的实现中,目前有多种方式可以实现OKVS,其中PaXoS(线性无关比特向量生成器)是较为常用的方式。
[0003]PaXoS构造的关键在于对于正在处理的元素所产生的向量,需及时探测出其与已经处理过的元素所产生的结果向量集合之间是否线性相关。目前处理方法包括,让输出向量的维度足够大,使得所有元素插入之后得到的结果向量组线性无关的概率足够大,或者先固定向量维度,调整处理元素的顺序,优先处理不会产生线性相关的元素,再通过扩展输出向量的维度来解决剩下的会造成线性相关的元素,后一种方法会提高输出的数据结构的空间利用率,目前被广泛使用。
[0004]PaXoS输出的结果向量组在后续构造OKVS的应用中将作为系数组成比特线性方程组,解该方程组的解作为OKVS的输出数据结构。一方面扩展之后的向量的维度与方程组的未知数个数一致,向量维度越大,方程未知数越多,该方程组的一组解(可能存在多组解)作为OKVS输出结构的空间大小越大,另一方面,由于目前扩展维度的方式是随机扩展,使得扩展出来的部分的系数一致随机,这样使得解方程的复杂度更大。

技术实现思路

[0005]本专利技术要解决的技术问题是为了克服现有技术中PaXoS来实现OKVS时,由于扩展向量的维度大且扩展方式随机性大导致解方程组的效率低下的缺陷,提供一种键值对的数据结构的构建方法、系统、设备及存储介质。
[0006]本专利技术是通过下述技术方案来解决上述技术问题:
[0007]一种键值对的数据结构的构建方法,所述构建方法包括:
[0008]S11、生成与多个键值对对应的无向图,所述无向图包含多个顶点和多条插入边,其中,所述无向图对应一键边列表,所述键边列表用于表征每个键值对与对应的插入边及所述插入边的顶点值的对应关系;
[0009]S12、若所述无向图存在环状图,则析出所述无向图的无环图和至少一个分离边;
[0010]S13、将所述多个键值对划分得到与所述无环图对应的第一键集合以及与所述至少一个分离边对应的第二键集合;
[0011]S14、对所述第一键集合及对应的值进行编码得到解向量;
[0012]S15、基于所述第二键集合和随机函数构建得到第一OKVS;
[0013]S16、对所述至少一个分离边进行顶点向量扩展并构建得到第二OKVS;
[0014]S17、根据所述解向量、所述第一OKVS和所述第二OKVS组合构建得到所述多个键值对的总OKVS。
[0015]较佳地,所述构建方法还包括:
[0016]对所述第一OKVS执行步骤S11至S17,得到与第一OKVS对应的第一解向量、第一分OKVS和第二分OKVS,并由所述第一解向量、所述第一分OKVS和所述第二分OKVS组合构建所述第一OKVS;
[0017]和/或,
[0018]对所述第二OKVS执行步骤S11至S17,得到与第二OKVS对应的第二解向量、第三分OKVS和第四分OKVS,并由所述第二解向量、所述第三分OKVS和所述第四分OKVS组合构建所述第二OKVS。
[0019]较佳地,步骤S12具体包括:
[0020]基于图遍历法遍历所述无向图的所有顶点,输出至少一个有序列表及对应的无向边集合;
[0021]基于选取的目标有序列表析出所述无环图及对应的至少一个分离边。
[0022]较佳地,步骤S14具体包括:
[0023]对所述无环图的顶点依次进行向量赋值,得到所述解向量;
[0024]其中,每条插入边对应一目标健,通过每条插入边的两个端点向量计算得到所述目标健所属的键值对中的值。
[0025]较佳地,步骤S14还包括:
[0026]若所述解向量存在空位,则使用所述多个键值对中的任意的值进行填充。
[0027]较佳地,步骤S15具体包括:
[0028]基于所述随机函数对所述第二键集合中的健进行处理得到对应的值;
[0029]基于所述第二键集合中的健和所述对应的值生成新的键值对,以构建得到所述第一OKVS。
[0030]一种键值对的数据结构的构建系统,所述构建系统包括:
[0031]图生成器,用于生成与多个键值对对应的无向图,所述无向图包含多个顶点和多条插入边,其中,所述无向图对应一键边列表,所述键边列表用于表征每个键值对与对应的插入边的顶点值的对应关系;
[0032]环析出器,用于在所述无向图存在环状图时析出所述无向图的一无环图和至少一个分离边;
[0033]环处理器,用于将所述多个键值对划分得到与所述无环图对应的第一键集合以及与所述至少一个分离边对应的第二键集合;
[0034]树赋值器,用于对所述第一键集合及对应的值进行编码得到解向量;
[0035]环赋值器,用于基于所述第二键集合和随机函数构建得到第一OKVS;
[0036]位置编码器,用于对所述至少一个分离边进行顶点向量扩展,并构建得到第二OKVS;
[0037]键值对赋值器,用于根据所述解向量、所述第一OKVS和所述第二OKVS组合构建得
到所述多个键值对的总OKVS。
[0038]较佳地,所述构建系统还包括:
[0039]空位填充器,用于在所述解向量存在空位时使用所述多个键值对中的任意的值进行填充。
[0040]一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的键值对的数据结构的构建方法。
[0041]一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的键值对的数据结构的构建方法。
[0042]本专利技术的积极进步效果在于:消除PaXoS在制造线性独立性时的盲目性,有针对性地来制造线性独立性,并且不需要通过传统PaXoS的解方程组的方式来生成OKVS,从而提高PaXoS作为线性方程组系数时解方程组的效率,结合多层OKVS的结构,运用自迭代的方式来实现OKVS,即在实现OKVS的过程中需要用到OKVS,提高最终OKVS的空间利用率。
附图说明
[0043]图1为本专利技术实施例1的键值对的数据结构的构本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种键值对的数据结构的构建方法,其特征在于,所述构建方法包括:S11、生成与多个键值对对应的无向图,所述无向图包含多个顶点和多条插入边,其中,所述无向图对应一键边列表,所述键边列表用于表征每个键值对与对应的插入边及所述插入边的顶点值的对应关系;S12、若所述无向图存在环状图,则析出所述无向图的无环图和至少一个分离边;S13、将所述多个键值对划分得到与所述无环图对应的第一键集合以及与所述至少一个分离边对应的第二键集合;S14、对所述第一键集合及对应的值进行编码得到解向量;S15、基于所述第二键集合和随机函数构建得到第一OKVS;S16、对所述至少一个分离边进行顶点向量扩展并构建得到第二OKVS;S17、根据所述解向量、所述第一OKVS和所述第二OKVS组合构建得到所述多个键值对的总OKVS。2.如权利要求1所述的键值对的数据结构的构建方法,其特征在于,所述构建方法还包括:对所述第一OKVS执行步骤S11至S17,得到与第一OKVS对应的第一解向量、第一分OKVS和第二分OKVS,并由所述第一解向量、所述第一分OKVS和所述第二分OKVS组合构建所述第一OKVS;和/或,对所述第二OKVS执行步骤S11至S17,得到与第二OKVS对应的第二解向量、第三分OKVS和第四分OKVS,并由所述第二解向量、所述第三分OKVS和所述第四分OKVS组合构建所述第二OKVS。3.如权利要求1所述的键值对的数据结构的构建方法,其特征在于,步骤S12具体包括:基于图遍历法遍历所述无向图的所有顶点,输出至少一个有序列表及对应的无向边集合;基于选取的目标有序列表析出所述无环图及对应的至少一个分离边。4.如权利要求1所述的键值对的数据结构的构建方法,其特征在于,步骤S14具体包括:对所述无环图的顶点依次进行向量赋值,得到所述解向量;其中,每条插入边对应一目标健,通过每条插入边的两个端点向量计算得到所述目标健所属的键值对中的值。...

【专利技术属性】
技术研发人员:孙小超卞阳陈立峰杨亚楠
申请(专利权)人:上海富数科技有限公司广州分公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1