一种数据存储方法、数据查询方法及装置制造方法及图纸

技术编号:19934333 阅读:20 留言:0更新日期:2018-12-29 04:35
本申请公开了一种数据存储方法、数据查询方法及装置,数据存储方法包括:待存储数据以键Key‑值Value方式存储在第一B+树的第一节点中;包括:获取第一节点中存储的Key;所述第一节点为所述第一B+树中的任意一个节点;从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;根据所述第一标识确定第一目标B+树标识;从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。由此可见,可以将深度比较深的第一B+树中存储的数据,分散存储到多个深度比较浅的待选B+树中。这样一来,当需要查询数据时,则可以从深度比较浅的B+树中查询数据,查询速率比较快。

【技术实现步骤摘要】
一种数据存储方法、数据查询方法及装置
本申请涉及数据处理领域,特别是涉及一种数据存储方法、查询方法及装置。
技术介绍
随着网络技术的发展,网络中的产生了海量的数据。可以将这些数据存储在相应的存储设备中。若需要使用特定的数据,则可以从存储设备中查询该特定的数据,以便利用该数据执行其它操作。可以理解的是,由于数据量很大,当需要查询特定的数据时,如何从海量的数据中快速的查询到该特定的数据,是当前急需解决的问题。
技术实现思路
本申请所要解决的技术问题是如何从海量的数据中快速查询到特定的数据,提供一种数据存储方法、查询方法及装置。第一方面,本申请实施例提供一种数据存储方法,待存储数据以键Key-值Value方式存储在第一B+树的第一节点中;包括:获取所述第一节点中存储的Key;从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;根据所述第一标识确定第一目标B+树标识;从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。可选的,所述根据所述第一标识确定第一目标B+树标识,包括:对所述第一标识进行哈希运算,得到所述第一目标B+树标识。可选的,所述Key包括:所述待存储数据的物理区块地址PBA,所述Value包括:所述待存储数据的逻辑区块地址LBA。第二方面,本申请实施例提供一种数据查询方法,包括:获取待查询数据的Key;从所述待查询数据的Key中提取用于表征所述待查询数据的Key所处的数据存储区域的第二标识;根据所述第二标识确定第二目标B+树标识;从所述第二目标B+树标识对应的第二目标B+树中查询所述待查询数据;其中,所述待查询数据采用如第一方面所述的方法存储在所述第二目标B+树中。可选的,所述根据所述第二标识确定第二目标B+树标识,包括:对所述第二标识进行哈希运算,得到所述第二目标B+树标识。可选的,所述待查询数据的Key包括:所述待查询数据的物理区块地址PBA。第三方面,本申请实施例提供一种数据存储装置,待存储数据以键Key-值Value方式存储在第一B+树的第一节点中;包括:第一获取单元,用于获取所述第一节点中存储的Key;第一提取单元,用于从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;第一确定单元,用于根据所述第一标识确定第一目标B+树标识;存储单元,用于从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。可选的,所述第一确定单元,具体用于:对所述第一标识进行哈希运算,得到所述第一目标B+树标识。可选的,所述Key包括:所述待存储数据的物理区块地址PBA,所述Value包括:所述待存储数据的逻辑区块地址LBA。第四方面,本申请实施例提供一种数据查询装置,包括:第二获取单元,用于获取待查询数据的Key;第二提取单元,用于从所述待查询数据的Key中提取用于表征所述待查询数据的Key所处的数据存储区域的第二标识;第二确定单元,用于根据所述第二标识确定第二目标B+树标识;查询单元,用于从所述第二目标B+树标识对应的第二目标B+树中查询所述待查询数据;其中,所述待查询数据采用以上第一方面所述的方法存储在所述第二目标B+树中。可选的,第二确定单元,具体用于:对所述第二标识进行哈希运算,得到所述第二目标B+树标识。可选的,所述待查询数据的Key包括:所述待查询数据的物理区块地址PBA。与现有技术相比,本申请实施例具有以下优点:一方面,本申请实施例提供一种数据存储方法及装置,待存储数据以键Key-值Value方式存储在第一B+树的第一节点中;包括:获取第一节点中存储的Key;所述第一节点为所述第一B+树中的任意一个节点;从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;根据所述第一标识确定第一目标B+树标识;从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。由此可见,利用本申请实施例提供的数据存储方法及装置,可以将深度比较深的第一B+树中存储的数据,分散存储到多个深度比较浅的待选B+树中。这样一来,当需要查询数据时,则可以从深度比较浅的B+树中查询数据,查询速率比较快。而且,当需要同时查询多个待查询数据时,由于多个待查询数据可能存储在不同的深度浅的B+树中,因此,可以同时从多个深度比较浅的B+树中查询待查询数据,有效提高了查询效率。另一方面,本申请实施例提供了一种数据查询方法及装置,包括:获取待查询数据的Key;从所述待查询数据的Key中提取用于表征所述待查询数据的Key所处的数据存储区域的第二标识;根据所述第二标识确定第二目标B+树标识;从所述第二目标B+树标识对应的B+树中查询所述待查询数据;其中,所述待查询数据采用如以上第一方面所述的方法存储在所述第二目标B+树中的,也就是说,第二目标B+树标识对应的B+树的深度比较浅。由此可见,利用本申请实施例提供的数据查询方法,在查询数据时,是从深度比较浅的B+树中查询数据,查询速率比较快。而且,当需要同时查询多个待查询数据时,由于多个待查询数据可能存储在不同的深度浅的B+树中,因此,可以同时从多个深度比较浅的B+树中查询待查询数据,有效提高了查询效率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的一种数据存储方法的流程示意图;图2为本申请实施例提供的一种数据查询方法的流程示意图;图3为本申请实施例提供的一种数据存储装置的结构示意图;图4为本申请实施例提供的一种数据查询装置的结构示意图。具体实施方式为了使本
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本申请的专利技术人经过研究发现,可以利用B+树存储数据(例如存储元数据),当需要使用这些数据时,则从B+树中查询这些数据。而随着网络技术的发展,数据越来越多,因此,存储数据的B+树的深度会比较深。一方面,从B+树中查询数据时,一般是从B+树的根节点开始遍历,这样一来,若B+树的深度很深,则会导致从B+树中查询数据的效率比较低。另一方面,随着互联网技术的发展,随时可能会出现同一时刻需要查询多个待查询数据的情况,而从B+树中查询数据时,一次只能查询一个待查询数据。即多个待查询数据需要排队,按序查询,也就是说,当同一时刻需要查询多个待查询数据时,从B+树中查询数据的效率比较低这种缺陷表现的尤为明显。鉴于此,本申请实施例改变了数据本文档来自技高网
...

【技术保护点】
1.一种数据存储方法,其特征在于,待存储数据以键Key‑值Value方式存储在第一B+树的第一节点中;包括:获取所述第一节点中存储的Key;从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;根据所述第一标识确定第一目标B+树标识;从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。

【技术特征摘要】
1.一种数据存储方法,其特征在于,待存储数据以键Key-值Value方式存储在第一B+树的第一节点中;包括:获取所述第一节点中存储的Key;从所述Key中提取用于表征所述Key所处的数据存储区域的第一标识;根据所述第一标识确定第一目标B+树标识;从多个待选B+树中确定与所述第一目标B+树标识对应的第一目标B+树,将所述待存储数据存储在所述第一目标B+树的节点中;其中,所述多个待选B+树的深度均小于所述第一B+树的深度。2.根据权利要求1所述的方法,其特征在于,所述根据所述第一标识确定第一目标B+树标识,包括:对所述第一标识进行哈希运算,得到所述第一目标B+树标识。3.根据权利要求1或2所述的方法,其特征在于,所述Key包括:所述待存储数据的物理区块地址PBA,所述Value包括:所述待存储数据的逻辑区块地址LBA。4.一种数据查询方法,其特征在于,包括:获取待查询数据的Key;从所述待查询数据的Key中提取用于表征所述待查询数据的Key所处的数据存储区域的第二标识;根据所述第二标识确定第二目标B+树标识;从所述第二目标B+树标识对应的第二目标B+树中查询所述待查询数据;其中,所述待查询数据采用如权利要求1所述的方法存储在所述第二目标B+树中。5.根据权利要求4所述的方法,其特征在于,所述根据所述第二标识确定第二目标B+树标识,包括:对所述第二标识进行哈希运算,得到所述第二目标B+树标识。6.根据权利要求4或5所述的方法,其特征在于,所述待查询数据的Key包括:所述待查询数据的物理区块地址PBA。7.一种数据存储装置,其特征在于,待存储数据以键K...

【专利技术属性】
技术研发人员:姜腾光
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

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

1