本发明专利技术公开了一种内存中关联数据的存取方法与终端;本发明专利技术将第一唯一标识对第一预设数N取余,并将得到的余数补齐至第二预设长度M之后作为哈希索引标识K;获取与第一数据关联的第二数据,生成长度为L
【技术实现步骤摘要】
一种内存中关联数据的存取方法与终端
[0001]本专利技术涉及计算机
,特别涉及一种内存中关联数据的存取方法与终端。
技术介绍
[0002]一些业务数据之间存在一定联系的场景,比如订单系统中,订单id(oid)和买家id(bid)之间存在着业务上的联系。业务上经常会需要获取某个订单的信息,或者获取某个买家一个时间范围内的订单信息等等。
[0003]传统的解决方法是设计一种数组(队列)结构,要搜索数据的时候,依次遍历数组中的数据项,直到匹配出所有结果。这种方法在数据量大的时候,搜索效率非常低。
技术实现思路
[0004]本专利技术所要解决的技术问题是:提供一种内存中关联数据的存取方法与终端,实现数据的快速获取,提高数据获取效率。
[0005]为了解决上述技术问题,本专利技术采用的技术方案为:
[0006]一种内存中关联数据的存取方法,包括:
[0007]S1、接收数据存储请求,获取所述数据存储请求中的第一数据的第一唯一标识,将所述第一唯一标识对第一预设数N取余,并将得到的余数补齐至第二预设长度M之后作为哈希索引标识K,所述第一预设数N=2^M;
[0008]S2、获取与所述第一数据关联的第二数据,生成长度为L
‑
M的数据临时标识D,将所述第二数据的第二唯一标识设置为(D<<M)|K,将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储,所述L为预设唯一标识长度;
[0009]S3、接收数据查询请求,根据所述数据查询请求中包含的唯一标识种类和待查询唯一标识找到对应的哈希索引标识,得到并返回关联数据,所述唯一标识种类为第一唯一标识或第二唯一标识。
[0010]为了解决上述技术问题,本专利技术采用的另一种技术方案为:
[0011]一种内存中关联数据的存取终端,包括处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0012]S1、接收数据存储请求,获取所述数据存储请求中的第一数据的第一唯一标识,将所述第一唯一标识对第一预设数N取余,并将得到的余数补齐至第二预设长度M之后作为哈希索引标识K,所述第一预设数N=2^M;
[0013]S2、获取与所述第一数据关联的第二数据,生成长度为L
‑
M的数据临时标识D,将所述第二数据的第二唯一标识设置为(D<<M)|K,将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储,所述L为预设唯一标识长度;
[0014]S3、接收数据查询请求,根据所述数据查询请求中包含的唯一标识种类和待查询唯一标识找到对应的哈希索引标识,得到并返回关联数据,所述唯一标识种类为第一唯一标识或第二唯一标识。
[0015]本专利技术的有益效果在于:本专利技术将第一唯一标识和第二唯一标识根据同一索引表建立索引,并根据索引进行分类存储,在用户进行查询时,使用第一唯一标识或第二唯一标识都能够通过同一个索引表找到对应的存储位置,直接从该存储位置来获取数据,提高了数据查找的速度,实现了数据的快速获取,提高了数据获取效率。
附图说明
[0016]图1为本专利技术实施例的一种内存中关联数据的存取方法的流程图;
[0017]图2为本专利技术实施例的一种内存中关联数据的存取终端的结构图;
[0018]图3为本专利技术实施例的一种内存中关联数据的存取方法的数据结构示意图;
[0019]图4为本专利技术实施例的一种内存中关联数据的存取方法的数据处理示意图;
[0020]标号说明:
[0021]1、一种内存中关联数据的存取终端;2、处理器;3、存储器。
具体实施方式
[0022]为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。
[0023]请参照图1,一种内存中关联数据的存取方法,包括:
[0024]S1、接收数据存储请求,获取所述数据存储请求中的第一数据的第一唯一标识,将所述第一唯一标识对第一预设数N取余,并将得到的余数补齐至第二预设长度M之后作为哈希索引标识K,所述第一预设数N=2^M;
[0025]S2、获取与所述第一数据关联的第二数据,生成长度为L
‑
M的数据临时标识D,将所述第二数据的第二唯一标识设置为(D<<M)|K,将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储,所述L为预设唯一标识长度;
[0026]S3、接收数据查询请求,根据所述数据查询请求中包含的唯一标识种类和待查询唯一标识找到对应的哈希索引标识,得到并返回关联数据,所述唯一标识种类为第一唯一标识或第二唯一标识。
[0027]从上述描述可知,本专利技术的有益效果在于:本专利技术将第一唯一标识和第二唯一标识根据同一索引表建立索引,并根据索引进行分类存储,在用户进行查询时,使用第一唯一标识或第二唯一标识都能够通过同一个索引表找到对应的存储位置,直接从该存储位置来获取数据,提高了数据查找的速度,实现了数据的快速获取,提高了数据获取效率。
[0028]进一步的,步骤S3具体为:
[0029]接收数据查询请求,若所述数据查询请求中包含的是待查询第一唯一标识A,则计算A%N作为查询索引值,找到与查询索引值相等的第一哈希索引标识,从而得到第一哈希索引标识对应的第一存储内容,并对所述第一存储内容进行遍历,得到所有所述待查询第一唯一标识等于A的所有所述关联数据并返回。
[0030]由上述描述可知,当用户使用第一唯一标识进行查询时,程序将计算并根据索引值找对应的存储内容,只需对存储内容进行遍历,就能找到所有对应的关联数据,而不需要对所有数据进行遍历,减少了需要便利的数据总量,提高了查询速度。
[0031]进一步的,步骤S3具体为:
[0032]接收数据查询请求,若所述数据查询请求中包含的是待查询第二唯一标识B,则计算B%N作为查询索引值,找到与查询索引值相等的第二哈希索引标识,从而得到第二哈希索引标识对应的第二存储内容,并对所述第二存储内容进行遍历,得到唯一与所述待查询第二唯一标识B相等的所述关联数据并返回。
[0033]由上述描述可知,用户使用第二唯一标识进行查询时,也能通过第二唯一标识进行索引,找到对应的存储内容,只需对找到的存储内容进行遍历,就能找到唯一对应的关联数据,而不需要对所有数据进行遍历,减少了需要便利的数据总量,提高了查询速度。
[0034]进一步的,所述步骤S2将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储具体为:
[0035]将包括所述第一唯一标识和所述第二唯一标识以及所述第二数据的数据内容的待存储数据存入所述哈希索引标识所绑定的数组结构中。
[0036]由上述描述可知,以上作为本专利技术的一种实施例,其本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种内存中关联数据的存取方法,其特征在于,包括:S1、接收数据存储请求,获取所述数据存储请求中的第一数据的第一唯一标识,将所述第一唯一标识对第一预设数N取余,并将得到的余数补齐至第二预设长度M之后作为哈希索引标识K,所述第一预设数N=2^M;S2、获取与所述第一数据关联的第二数据,生成长度为L
‑
M的数据临时标识D,将所述第二数据的第二唯一标识设置为(D<<M)|K,将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储,所述L为预设唯一标识长度;S3、接收数据查询请求,根据所述数据查询请求中包含的唯一标识种类和待查询唯一标识找到对应的哈希索引标识,得到并返回关联数据,所述唯一标识种类为第一唯一标识或第二唯一标识。2.根据权利要求1所述的一种内存中关联数据的存取方法,其特征在于,步骤S3具体为:接收数据查询请求,若所述数据查询请求中包含的是待查询第一唯一标识A,则计算A%N作为查询索引值,找到与查询索引值相等的第一哈希索引标识,从而得到第一哈希索引标识对应的第一存储内容,并对所述第一存储内容进行遍历,得到所有所述待查询第一唯一标识等于A的所有所述关联数据并返回。3.根据权利要求1所述的一种内存中关联数据的存取方法,其特征在于,步骤S3具体为:接收数据查询请求,若所述数据查询请求中包含的是待查询第二唯一标识B,则计算B%N作为查询索引值,找到与查询索引值相等的第二哈希索引标识,从而得到第二哈希索引标识对应的第二存储内容,并对所述第二存储内容进行遍历,得到唯一与所述待查询第二唯一标识B相等的所述关联数据并返回。4.根据权利要求1所述的一种内存中关联数据的存取方法,其特征在于,所述步骤S2将包括所述第一唯一标识和所述第二唯一标识的待存储数据与所述哈希索引标识进行绑定存储具体为:将包括所述第一唯一标识和所述第二唯一标识以及所述第二数据的数据内容的待存储数据存入所述哈希索引标识所绑定的数组结构中。5.根据权利要求1所述的一种内存中关联数据的存取方法,其特征在于,所述预设唯一标识长度L的可选择区间为[32,512],所述第二预设长度M的可选择区间为[1,floor(L/2)]。6.一种内存中关联数据的存取终端,包括处理器、存储器及存储在存储器...
【专利技术属性】
技术研发人员:刘德建,陈铭,陈耀灿,郭玉湖,陈宏,
申请(专利权)人:福建天泉教育科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。