CN108121500A - 一种数据的存取方法及装置 - Google Patents
一种数据的存取方法及装置 Download PDFInfo
- Publication number
- CN108121500A CN108121500A CN201611086330.2A CN201611086330A CN108121500A CN 108121500 A CN108121500 A CN 108121500A CN 201611086330 A CN201611086330 A CN 201611086330A CN 108121500 A CN108121500 A CN 108121500A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- access mode
- stored
- storage address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据的存取方法,包括:获取第一数据的存取方式和第一位置标识;根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。本发明还同时公开了一种数据的存取装置。
Description
技术领域
本发明涉及数据处理技术,尤其涉及一种数据的存取方法及装置。
背景技术
通常,数据通信设备包含有片内和片外两个存储器。对于较大量的数据,如果要求在数据通信设备内实现数据的快速存储和查找,现有技术中一般是采用哈希法来存储和查找数据,并将片内存储器作为片外存储器的备用存储空间。
例如,对于数据存储,由于片外存储器的存储空间大,数据的首选存储器便是片外存储器;但是,在哈希存储过程中可能会产生冲突,即两个数据映射到同一个位置,而在产生冲突之后,新数据将会被存储到片内存储器。图1为现有技术中哈希存储过程示意图,数据A和数据D已存储在片外存储器中,当数据B和数据A产生冲突时,将数据B存储到片内存储器;此外,片内存储器的存储空间可以划分为多个区域,用于进一步减少冲突。如图1所示,当数据C和数据B在片内存储器的第一区域产生冲突时,将数据C存储到片内存储器的第二区域。片外存储器的存储空间虽然比片内存储器的存储空间大,但是在片外存储器中查找数据的速度慢。所以,在存储一个数据时,一般只允许访问一次片外存储器,且不能将片外存储器的存储空间划分为多个区域。对于数据删除,则同时在片外存储器和片内存储器中进行查找,找到数据后即可删除该数据。
然而,采用哈希法对数据进行存取的方法虽然简单,但是存在以下缺点:一是地址空间利用率低,由于在哈希算法中,数据在地址空间中的排序比较稀疏,通常数据只会占用全部地址空间的三分之一,也就是说需要三倍数据大小的地址空间来存储该数据;二是不适用于存储大量数据,当数据量过大时,数据的稀疏排序导致不同数据可能会映射至相同的地址即产生冲突,从而无法存储新的数据。
发明内容
有鉴于此,本发明实施例期望提供一种数据的存取方法及装置,能够存储大量数据并提高地址空间利用率。
为达到上述目的,本发明的技术方案是这样实现的:
本发明实施例提供了一种数据的存取方法,所述方法包括:
获取第一数据的存取方式和第一位置标识;
根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;
根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
上述方案中,所述在所述第一节点对所述第一数据执行所述存取方式,包括:
若所述存取方式为查找,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
若所述存取方式为存储,则存储与所述第一数据对应的第一存储地址至所述第一节点;
若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
上述方案中,当所述存取方式为存储,且判断出所述第一节点不满足执行所述存取方式的要求之后,所述方法还包括:
确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点。
上述方案中,所述方法还包括:更新所述第一节点、第三节点的参数;所述参数包括映射至节点的数据的信息与数量。
上述方案中,所述若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,所述方法还包括:
获取上层节点中与所述第一位置标识相对应的第四节点的参数;
根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
本发明实施例还提供了一种数据的存取装置,所述装置包括:第一处理单元、第二处理单元;其中,
所述第一处理单元,用于获取第一数据的存取方式和第一位置标识;
所述第二处理单元,用于根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
上述方案中,所述第二处理单元在所述第一节点对所述第一数据执行所述存取方式为:
若所述存取方式为查找,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
若所述存取方式为存储,则存储与所述第一数据对应的第一存储地址至所述第一节点;
若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
上述方案中,所述第二处理单元,还用于:确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将所述第二数据对应的第二存储地址存储至所述第三节点。
上述方案中,所述第二处理单元,还用于更新所述第一节点、第三节点的参数;所述参数包括映射至节点的数据的信息与数量。
上述方案中,所述第二处理单元,还用于:
根据所述第一位置标识在上层节点中查找与所述第一位置标识相对应的第四节点;根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
本发明实施例提供的数据的存取方法及装置,获取第一数据的存取方式和第一位置标识;根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。可见,本发明实施例基于片内存储器的存储空间小、速度快以及片外存储器的存储空间大、速度慢等特点,将数据存储在片外存储器,并将数据在片外存储器中的存储地址记录在片内存储器中,以使数据在片外存储器中进行存储时不必申请连续的存储空间,从而能够存储大量数据并提高地址空间利用率。
此外,在数据查找过程中,同时对每层节点进行查找,当查找到与目标数据对应的节点后,根据该节点记录的存储地址便可访问所述目标数据,可以提高或保证数据查找效率;在数据存储过程中,当有两个数据同时映射至相同节点时,使这两个数据都去下一层继续查找合适的节点,以解决数据冲突问题;在数据删除过程中,当根据与目标数据对应的节点中记录的存储地址将所述目标数据删除后,进一步删除上层节点中与所述目标数据相关的信息,提高节点的利用率。
附图说明
图1为现有技术中哈希存储过程示意图;
图2为本发明实施例中数据的分布状态示意图;
图3为本发明实施例数据的存取方法的实现流程示意图;
图4为本发明实施例一中“森林”式的数据存储的状态示意图;
图5为错误的数据存储方式的状态示意图;
图6为本发明实施例二数据存储的状态示意图;
图7为本发明实施例三数据删除的状态示意图;
图8为本发明实施例数据的存取装置的组成结构示意图。
具体实施方式
首先,在数据通信设备的片内存储器中建立一种类似“森林”的数据结构;该“森林”包含有N层,N≥2,每一层对应片内存储器中的一块地址空间、且每一层包含有2个以上节点;数据存储在片外存储器,而“森林”中的节点存储数据在片外存储器中的存储地址;并且,建立数据、位置标识、节点之间的映射关系,即建立数据与位置标识之间的对应关系、位置标识与节点之间的对应关系,以实现根据数据的位置标识可获取该位置标识在每一层所对应的节点;所述位置标识、节点可采用数字、字母、文字等符号表示;在实际应用中,可采用哈希法建立所述数据与位置标识之间的对应关系。
每个节点包含有collision、valid、count、index、conflict等参数;其中,
collision,占1bit,用于表示节点是否发生了冲突,即是否有两个或两个以上数据映射至该节点;collision为1表示节点发生了冲突,collision为0表示节点没有发生冲突;
valid,占1bit,用于表示节点是否被数据占用,即是否有数据映射至该节点;例如,valid为1表示节点被数据占用,valid为0表示节点没有被数据占用;
count,占1Byte,用于表示在节点发生冲突的数据的数量,count的值大于或等于1;
index,占2Byte,用于表示数据在片外存储器中的存储地址;
conflict,用于当有两个或两个以上数据映射至节点,即collision的值为1时,记录映射至该节点的每个数据的信息,以便在下一层查找数据;所述信息包括数据的位置标识,所述位置标识用于表示数据在每一层对应的节点。
因此,各节点对应的参数(collision,valid,count)的值可表示节点的使用情况,如下:
(0,0,0)表示节点为空,没有数据映射至节点;
(0,1,1)表示有1个数据映射至节点、且没有发生冲突;
(1,1,n)表示有n个数据映射至节点、且发生了冲突,n大于或等于2。
这里,该“森林”并不是严谨的森林,因为森林中的每棵树要求每个节点最多只有一个父节点,而在该“森林”中,每个节点可能不止一个父节点;此外,在该“森林”的每一层中,所有父节点的个数之和等于所有子节点的个数之和;所述父节点为参数(collision,valid,count)的值为(1,1,n)的节点;所述子节点为参数(collision,valid,count)的值为(0,1,1)的节点。
图2为本发明实施例中数据的分布示意图,由图2可知,由于数据存储在片外存储器,而“森林”中的节点存储数据在片外存储器中的存储地址,在片内存储器的“森林”中查找到数据对应的节点后,则根据节点指示的地址可到片外存储器中访问该数据。
图3为本发明实施例数据的存取方法的实现流程示意图,该方法包括:
步骤101:获取第一数据的存取方式和第一位置标识;
这里,所述存取方式用于表示对所述第一数据将要执行的操作,包括存储、查找、删除等操作;在实际应用中,用户可根据实际需要选择所需要的存取方式;所述第一位置标识用于获取所述第一数据在“森林”中每一层对应的节点。
步骤102:根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;
具体地,根据所述第一位置标识在“森林”中的当前层节点中查找与所述第一位置标识相对应的第一节点,以获取所述第一数据在当前层节点中所映射的第一节点。
这里,所述当前层可以是“森林”中的第一层,也可以不是“森林”中的第一层;实际上,对片内存储器的“森林”中各层是同时进行查找的,只是通常数据会优先映射至上层节点,而在上层节点产生冲突时,才映射至下层;因此,为了便于理解和阐述,可以认为在“森林”中是一层一层依次进行查找的,即从第一层开始往下查找。
步骤103:根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
具体地,当所述存取方式为存储时,若根据所述第一节点的参数判断出所述第一节点满足执行存储的要求,则存储与所述第一数据对应的第一存储地址至所述第一节点;若根据所述第一节点的参数判断出所述第一节点不满足执行存储的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行存储的要求的第二节点,并存储与所述第一数据对应的第一存储地址至所述第二节点;
当所述存取方式为查找时,若根据所述第一节点的参数判断出所述第一节点满足执行查找的要求,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;若根据所述第一节点的参数判断出所述第一节点不满足执行查找的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行查找的要求的第二节点,获取所述第二节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
当所述存取方式为删除时,若根据所述第一节点的参数判断出所述第一节点满足执行删除的要求,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据;若根据所述第一节点的参数判断出所述第一节点不满足执行删除的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行删除的要求的第二节点,获取所述第二节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
这里,所述参数记录有节点当前的状态信息,包括映射至节点的数据的信息与数量;例如,当有两个或两个以上数据映射至节点时,记录每个数据的位置标识等信息、确定节点是否被占用以及是否存储有数据的存储地址等。
进一步地,当所述存取方式为存储,且判断出所述第一节点不满足执行所述存取方式的要求之后,该方法还包括:确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点。
具体地,当在步骤103中判断出所述第一节点不满足对所述第一数据执行存储的要求时,如果根据所述第一节点的参数判断出当前只有第二数据和所述第一数据映射至所述第一节点,则在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点,以及删除所述第一节点中存储的所述第二存储地址。
这里,所述第一节点中记录有所述第二数据的第二位置标识;所述第二数据与所述第一数据相比,优先在下层节点中查找与所述第二位置标识相对应的、且满足执行存储要求的第三节点。
进一步地,该方法还包括:更新所述第一节点、第三节点的参数。
具体地,当所述存取方式为存储时,在所述存储与所述第一数据对应的第一存储地址至所述第一节点之后,更新所述第一节点的参数,以表明所述第一数据已映射至所述第一节点并使所述第一节点不满足执行存储的要求;在所述存储与所述第一数据对应的第一存储地址至所述第二节点之后,更新所述第二节点的参数,以表明所述第一数据已映射至所述第二节点并使所述第二节点不满足执行存储的要求;在所述将与所述第二数据对应的第二存储地址存储至所述第三节点之后,更新所述第三节点的参数,以表明所述第二数据已映射至所述第三节点并使所述第三节点不满足执行存储的要求;
当所述存取方式为删除时,在所述获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,更新所述第一节点的参数,以表明当前已没有数据映射至所述第一节点并使所述第一节点不满足执行删除的要求。
这里,所述参数包括映射至节点的数据的信息与数量;所述数据的信息包括数据的位置标识等。
进一步地,若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,该方法还包括:
获取上层节点中与所述第一位置标识相对应的第四节点的参数;
根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
具体地,当所述存取方式为删除时,在所述获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,获取上层节点中与所述第一位置标识相对应的第四节点的参数;根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找出与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点,以及删除所述第五节点中存储的所述第三存储地址。
这里,如果当前层是第一层,则不存在所述第四节点,即不用执行上述操作;如果根据所述第四节点的参数确定当前不仅仅只有第三数据和所述第一数据映射至所述第四节点,则也不用执行上述操作。
进一步地,该方法还包括:更新所述第四节点、第五节点的参数。
具体地,所述将所述第三存储地址存储至所述第四节点,以及删除所述第五节点中存储的所述第三存储地址之后,更新所述第四节点的参数,以表明所述第三数据已映射至所述第四节点并使所述第四节点满足执行删除的要求;更新所述第五节点的参数,以表明当前已没有数据映射至所述第五节点并使所述第五节点不满足执行删除的要求。
在本实施例中,数据查找在片内存储器进行,数据存储在片外存储器,使得片外存储器中的数据可以存储在任意不连续的空间,并充分利用了片内存储器查找速度极高、片外存储器的存储空间大的特点,在不影响效率的情况下,可存储大量数据,且提高了空间利用率。
下面结合附图和具体实施例详细说明本发明实施例数据的存取方法的具体实现流程。
实施例一
本实施例基于的场景为:数据查找,即获取节点中存储的与数据对应的存储地址,并根据所述存储地址读取所述数据。
对于数据查找,由于数据的存储地址均存储在参数(collision,valid,count)的值为(0,1,1)的节点,则具体查找过程如下:
从第1层开始查找,找到与所述数据的位置标识相对应的节点后,根据该节点的参数执行相应的处理,即:
如果该节点的参数(collision,valid,count)的值为(0,1,1),则获取该节点中存储的与所述数据对应的存储地址,并根据所述存储地址从片外存储器中读取所述数据;
如果该节点的参数(collision,valid,count)的值为(1,1,n),则继续向下层查找,直到在某一层查找到一个与所述数据的位置标识相对应的、且参数(collision,valid,count)的值为(0,1,1)的节点,即查找成功;
如果该节点的参数(collision,valid,count)的值为(0,0,0),则说明该“森林”中未记录所述数据,查找失败。
图4为本发明实施例一中“森林”式的数据存储的状态示意图,图4(aa)和图4(bb)分别表示“森林”式的数据存储进行抽象化前和抽象化后两种不同状态的示意图;下面以在图4(bb)中查找数据B为例进行说明,首先从第1层开始查找,根据B的位置标识在第1层查找到节点a,而节点a的参数为(1,1,2),说明在节点a产生过冲突;并且,根据节点a的conflict中记录的冲突信息,可知A和B在节点a产生过冲突,则到第2层继续查找B;当根据B的位置标识在第2层查找到节点d,而节点d的参数为(0,1,1),说明节点d满足数据查找要求,则提取该节点d中存储的与数据B对应的存储地址,并根据所述存储地址从片外存储器中读取所述数据B,以完成数据查找。
实施例二
本实施例基于的场景为:数据存储,即将数据在片外存储器中的存储地址存储至与所述数据的位置标识相对应的、且满足执行存储的要求的节点中。
对于数据存储,数据的存储地址应存储到参数(collision,valid,count)的值为(0,0,0)的节点,具体存储过程如下:
从第1层开始查找,找到与所述数据的位置标识相对应的节点后,根据该节点的参数执行相应的处理,即:
如果该节点的参数(collision,valid,count)的值为(0,0,0),则直接将所述数据的存储地址和位置标识存储至该节点,并修改该节点的参数值为(0,1,1);
如果该节点的参数(collision,valid,count)的值为(0,1,1),说明已经有一个数据映射至该节点,而由于所述数据也映射至该节点,即该节点将发生冲突,则在该节点记录产生冲突的两个数据的信息,并使这两个数据都去下一层继续查找合适的节点;
如果该节点的参数(collision,valid,count)的值为(1,1,n),说明已经有n个数据映射至该节点,即该节点已经有n个数据发生了冲突,则在该节点记录该数据的信息,修改该节点的参数值为(1,1,n+1),并使该数据到下一层继续查找合适的节点。
接着,在某一层找到了参数(collision,valid,count)的值为(0,0,0)的节点后,将数据的存储地址和位置标识存储至该节点,并修改该节点的参数值为(0,1,1);
如果直到最后一层也发生了冲突,说明片内存储空间已满,数据无法存储,则需要清除该数据在各层的冲突信息。
这里,当所述两个数据都去下一层继续寻找合适的节点时,前面映射至节点的数据(简称为原有数据)比当前映射至节点的数据(简称为新插入的数据)优先在下一层查找合适的节点;如果原有数据或新插入的数据在下一层又产生了冲突,则记录冲突信息,继续往下一层查找节点,直至找到不冲突的节点,以实现数据存储,或者一直找到最后一层还是有冲突,则数据存储失败;当数据存储失败时,还需要将前面各层中所记录的所述数据的信息删除,即删除前面各层中所记录的由所述数据产生的冲突信息,以使“森林”回退到存储所述数据之前的状态。
这里,新插入的数据与原有数据产生冲突后,两者都要去下一层查找节点的原因是:在查找数据的时候,会判断collision和valid的值,只有collision为0且valid为1时才读取数据;如果产生冲突的时候,原有数据继续保留在当前层,而不去下一层查找新节点,那么,查找数据的时候,就不能按照collision和valid的值直接判断是否需要根据接口给出的地址去读取数据,这样可能需要读取多次才能找到需要的数据,会影响效率。
如图4(bb)所示,数据A和B在第1层发生冲突,该节点的值为(1,1,2),表示(发生冲突,该节点被使用,数据个数为2);因为在该节点发生冲突,A和B需要在第2层查找新的节点,以使A和B所在的节点的值都为(0,1,1),表示(没有冲突,该节点被使用,数据个数为1);而C在第1层的节点没有发生冲突,为(0,1,1)。
图5为错误的数据存储方式的状态示意图,如图5所示,A和B在第一层的节点a处发生冲突,但A仍然保存在第一层的节点a处,节点a的collison和valid的值都为1,B保存在第二层的节点c处,节点c的collison和valid的值分别为0、1;查找数据B的时候,无法直接通过判断collision和valid的值确认数据B在哪一层,而会发现第一层和第二层都有B的信息,因此需要在节点a和节点c分别读取数据B,然后比较哪一个是正确的。
下面以在图4(bb)中存储数据D为例进行说明,图6为本发明实施例二数据存储的状态示意图,图4(bb)和图6可分别表示数据D存储前和数据D存储后的两种不同状态示意图;当需要在图4(bb)的基础上存储一个新的数据D时,D只能存储至参数为(0,0,0)的节点,即空节点。
首先,若在第1层查找到与D的位置标识相对应的节点b,而节点b当前的参数为(0,1,1)即数据C已映射至节点b,则D和C在节点b发生了冲突,将节点b的参数更新为(1,1,2),记录C和D的信息至节点b的conflict中;然后,提取节点b中存储的C在片外存储器中的存储地址,使C和D一起到第2层查找合适的节点,并优先安排原有数据C;
在第2层,若查找到与C的位置标识相对应的节点d,而节点d当前的参数为(0,1,1)即B已映射至节点d,则C和B在节点d发生了冲突,将节点d的参数更新为(1,1,2),记录C和B的信息至节点d的conflict中;然后,提取节点d中存储的B在片外存储器中的存储地址,使B和C一起到第3层查找合适的节点,并优先安排原有数据B;此时,若D查找到与D的位置标识相对应的节点e,而节点e当前的参数为(0,0,0)即当前没有数据映射至节点e,则将D在片外存储器中的存储地址存储在节点e中,并将节点e的参数更新为(0,1,1);
在第3层,若查找到与B的位置标识相对应的节点f且节点f当前的参数为(0,0,0)、以及查找到与C的位置标识相对应的节点g且节点g当前的参数为(0,0,0),则将B在片外存储器中的存储地址存储在节点f中,并将节点f的参数更新为(0,1,1),以及将C在片外存储器中的存储地址存储在节点g中,并将节点g的参数更新为(0,1,1),以完成数据D的存储。
这里,当新插入的数据与原有数据在节点产生冲突且将该节点中存储的原有数据的存储地址提取出来以后,可删除该节点中存储的所述原有数据的存储地址;例如,当所述提取节点d中存储的B在片外存储器中的存储地址后,可删除所述节点d中存储的B在片外存储器中的存储地址,以节省空间利用率。
这里,假如“森林”总共有8层,当查找到第8层时,若与D的位置标识相对应的节点当前的参数为(0,1,1)或(0,1,n),即D和一个或n个数据在该节点发生了冲突,此时说明存储空间已满,数据D无法存储了;但是,由于第1层至第7层都已经记录了D的冲突信息,则删除第1层至第7层中每一层中所记录的D的冲突信息,以使“森林”要回退到添加数据D之前的状态;例如,对于图6所示的第一层中的节点b而言,删除节点b中记录的数据D的信息后,节点b不再发生冲突,则需要将数据C在片外存储器中的存储地址重新存储至节点b,并删除数据C在第二层中的节点d处产生的冲突信息。
实施例三
本实施例基于的场景为:数据删除,即获取节点中存储的与数据对应的存储地址,并根据所述存储地址删除所述数据。
对于数据删除,由于数据的存储地址均存储在参数(collision,valid,count)的值为(0,1,1)的节点,则具体删除过程如下:
从第1层开始查找,找到与所述数据的位置标识相对应的节点后,根据该节点的参数执行相应的处理,即:
如果该节点的参数(collision,valid,count)的值为(0,1,1),则获取该节点中存储的与所述数据对应的存储地址,并根据所述存储地址从片外存储器中删除所述数据;
如果该节点的参数(collision,valid,count)的值为(1,1,n),则继续向下层查找,直到在某一层查找到一个与所述数据的位置标识相对应的、且参数(collision,valid,count)的值为(0,1,1)的节点,并执行数据删除操作;
如果该节点的参数(collision,valid,count)的值为(0,0,0),则说明该“森林”中未记录所述数据,删除失败。
这里,若与所述数据的位置标识相对应的节点不在第1层,则还需要删除所述数据在上层节点中的冲突信息,以使“森林”能够回退到存储所述数据之前的结构,当然前提条件是该“森林”在存储所述数据之后未继续存储数据。
下面以删除图6中的数据D为例进行说明,图7为本发明实施例三数据删除的状态示意图,图7(aa)和图7(bb)分别表示数据删除后的两种不同状态示意图,具体删除过程如下:
根据图6,首先,根据D的位置标识在第1层查找到节点b,而节点b的参数为(1,1,2),说明在节点b产生过冲突;并且,根据节点b的conflict中记录的冲突信息,可知C和D在节点b产生过冲突,则到第2层继续查找D;根据D的位置标识在第2层查找到节点e,而节点e的参数为(0,1,1),满足执行删除的要求,则获取节点e中存储的与数据D对应的存储地址,并根据所述存储地址从片外存储器中删除数据D,以得到图7(aa)所示的状态示意图;
根据图7(aa),删除节点b的conflict中记录的D,由于节点b不再产生冲突,则根据节点b的conflict中记录的C的信息,获取C的位置标识;根据C的位置标识在第2层查找到节点d,而节点d的参数为(1,1,2),说明在节点d产生过冲突;并且,根据节点d的conflict中记录的冲突信息,可知B和C在节点d产生过冲突,则到第3层继续查找C;根据C的位置标识在第3层查找到节点g,而节点g的参数为(0,1,1),表示查找到C当前所在的节点;提取节点g中存储的与数据C对应的存储地址,并将所述与数据C对应的存储地址存储至节点b,更新节点b的参数为(0,1,1),以得到图7(bb)所示的状态示意图;
根据图7(bb),删除节点d的conflict中记录的C,由于节点d不再产生冲突,则根据节点d的conflict中记录的B的信息,获取B的位置标识;根据B的位置标识在第3层查找到节点f,而节点f的参数为(0,1,1),表示查找到B当前所在的节点;提取节点f中存储的与数据B对应的存储地址,并将所述与数据B对应的存储地址存储至节点d,更新节点d的参数为(0,1,1),以完成数据D的删除,以得到图4(bb)所示的状态示意图。
为实现上述方法,本发明实施例还提供了一种数据的存取装置,图8为本发明实施例数据的存取装置的组成结构示意图,该装置包括:第一处理单元11、第二处理单元12;其中,
所述第一处理单元11,用于获取第一数据的存取方式和第一位置标识;
所述第二处理单元12,用于根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
这里,所述存取方式用于表示对所述第一数据将要执行的操作,包括存储、查找、删除等操作;在实际应用中,用户可根据实际需要选择所需要的存取方式;所述第一位置标识用于获取所述第一数据在“森林”中每一层对应的节点。
所述第二处理单元12,具体用于:根据所述第一位置标识在“森林”中的当前层节点中查找与所述第一位置标识相对应的第一节点,以获取所述第一数据在当前层节点中所映射的第一节点。
这里,所述当前层可以是“森林”中的第一层,也可以不是“森林”中的第一层;实际上,对片内存储器的“森林”中各层是同时进行查找的,只是通常数据会优先映射至上层节点,而在上层节点产生冲突时,才映射至下层;因此,为了便于理解和阐述,可以认为在“森林”中是一层一层依次进行查找的,即从第一层开始往下查找。
所述第二处理单元12,具体用于:
当所述存取方式为存储时,若根据所述第一节点的参数判断出所述第一节点满足执行存储的要求,则存储与所述第一数据对应的第一存储地址至所述第一节点;若根据所述第一节点的参数判断出所述第一节点不满足执行存储的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行存储的要求的第二节点,并存储与所述第一数据对应的第一存储地址至所述第二节点;
当所述存取方式为查找时,若根据所述第一节点的参数判断出所述第一节点满足执行查找的要求,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;若根据所述第一节点的参数判断出所述第一节点不满足执行查找的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行查找的要求的第二节点,获取所述第二节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
当所述存取方式为删除时,若根据所述第一节点的参数判断出所述第一节点满足执行删除的要求,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据;若根据所述第一节点的参数判断出所述第一节点不满足执行删除的要求,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行删除的要求的第二节点,获取所述第二节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
这里,所述参数记录有节点当前的状态信息,包括映射至节点的数据的信息与数量;例如,当有两个或两个以上数据映射至节点时,记录每个数据的位置标识等信息、确定节点是否被占用以及是否存储有数据的存储地址等。
进一步地,所述第二处理单元12,还用于:当所述存取方式为存储,且判断出所述第一节点不满足执行所述存取方式的要求之后,确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点。
具体地,当所述第二处理单元12判断出所述第一节点不满足对所述第一数据执行存储的要求时,如果根据所述第一节点的参数判断出当前只有第二数据和所述第一数据映射至所述第一节点,则在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点,以及删除所述第一节点中存储的所述第二存储地址。
这里,所述第一节点中记录有所述第二数据的第二位置标识;所述第二数据与所述第一数据相比,优先在下层节点中查找与所述第二位置标识相对应的、且满足执行存储要求的第三节点。
进一步地,所述第二处理单元12,还用于更新所述第一节点、第三节点的参数。
具体地,当所述存取方式为存储时,所述第二处理单元12在所述存储与所述第一数据对应的第一存储地址至所述第一节点之后,更新所述第一节点的参数,以表明所述第一数据已映射至所述第一节点并使所述第一节点不满足执行存储的要求;所述第二处理单元12在所述存储与所述第一数据对应的第一存储地址至所述第二节点之后,更新所述第二节点的参数,以表明所述第一数据已映射至所述第二节点并使所述第二节点不满足执行存储的要求;所述第二处理单元12在所述将与所述第二数据对应的第二存储地址存储至所述第三节点之后,更新所述第三节点的参数,以表明所述第二数据已映射至所述第三节点并使所述第三节点不满足执行存储的要求;
当所述存取方式为删除时,所述第二处理单元12在所述获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,更新所述第一节点的参数,以表明当前已没有数据映射至所述第一节点并使所述第一节点不满足执行删除的要求。
这里,所述参数包括映射至节点的数据的信息与数量;所述数据的信息包括数据的位置标识。
进一步地,所述第二处理单元12,还用于:
获取上层节点中与所述第一位置标识相对应的第四节点的参数;
根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
具体地,当所述存取方式为删除时,所述第二处理单元12在所述获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,获取上层节点中与所述第一位置标识相对应的第四节点的参数;所述第二处理单元12根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找出与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点,以及删除所述第五节点中存储的所述第三存储地址。
这里,如果当前层是第一层,则不存在所述第四节点,即所述第二处理单元12不用执行上述操作;如果根据所述第四节点的参数确定当前不仅仅只有第三数据和所述第一数据映射至所述第四节点,则所述第二处理单元12也不用执行上述操作。
进一步地,所述第二处理单元12,还用于更新所述第四节点、第五节点的参数。
具体地,所述第二处理单元12在所述将所述第三存储地址存储至所述第四节点,以及删除所述第五节点中存储的所述第三存储地址之后,更新所述第四节点的参数,以表明所述第三数据已映射至所述第四节点并使所述第四节点满足执行删除的要求;更新所述第五节点的参数,以表明当前已没有数据映射至所述第五节点并使所述第五节点不满足执行删除的要求。
在本实施例中,数据查找在片内存储器进行,数据存储在片外存储器,使得片外存储器中的数据可以存储在任意不连续的空间,并充分利用了片内存储器查找速度极高、片外存储器的存储空间大的特点,在不影响效率的情况下,可存储大量数据,且提高了空间利用率。
在实际应用中,所述第一处理单元11、第二处理单元12均可由位于终端中的中央处理器(CPU)、微处理器(MPU)、数字信号处理器(DSP)、或现场可编程门阵列(FPGA)等实现。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (10)
1.一种数据的存取方法,其特征在于,所述方法包括:
获取第一数据的存取方式和第一位置标识;
根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;
根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
2.根据权利要求1所述的方法,其特征在于,所述在所述第一节点对所述第一数据执行所述存取方式,包括:
若所述存取方式为查找,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
若所述存取方式为存储,则存储与所述第一数据对应的第一存储地址至所述第一节点;
若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
3.根据权利要求2所述的方法,其特征在于,当所述存取方式为存储,且判断出所述第一节点不满足执行所述存取方式的要求之后,所述方法还包括:
确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将与所述第二数据对应的第二存储地址存储至所述第三节点。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:更新所述第一节点、第三节点的参数;所述参数包括映射至节点的数据的信息与数量。
5.根据权利要求2至4任一项所述的方法,其特征在于,所述若所述存取方式为删除,则获取所述第一节点中存储的与所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据之后,所述方法还包括:
获取上层节点中与所述第一位置标识相对应的第四节点的参数;
根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的与所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
6.一种数据的存取装置,其特征在于,所述装置包括:第一处理单元、第二处理单元;其中,
所述第一处理单元,用于获取第一数据的存取方式和第一位置标识;
所述第二处理单元,用于根据所述第一位置标识在当前层节点中查找与所述第一位置标识相对应的第一节点;根据所述第一节点的参数判断所述第一节点是否满足执行所述存取方式的要求,若满足,则在所述第一节点对所述第一数据执行所述存取方式;若不满足,则在下层节点中继续查找与所述第一位置标识相对应的、且满足执行所述存取方式的要求的第二节点,并在所述第二节点对所述第一数据执行所述存取方式。
7.根据权利要求6所述的装置,其特征在于,所述第二处理单元在所述第一节点对所述第一数据执行所述存取方式为:
若所述存取方式为查找,则获取所述第一节点中存储的所述第一数据对应的第一存储地址,并根据所述第一存储地址读取所述第一数据;
若所述存取方式为存储,则存储所述第一数据对应的第一存储地址至所述第一节点;
若所述存取方式为删除,则获取所述第一节点中存储的所述第一数据对应的第一存储地址,并根据所述第一存储地址删除所述第一数据。
8.根据权利要求7所述的装置,其特征在于,
所述第二处理单元,还用于确定当前只有第二数据和所述第一数据映射至所述第一节点时,在下层节点中查找与所述第二数据的第二位置标识相对应的、且满足执行存储的要求的第三节点,并将所述第二数据对应的第二存储地址存储至所述第三节点。
9.根据权利要求8所述的装置,其特征在于,
所述第二处理单元,还用于更新所述第一节点、第三节点的参数;所述参数包括映射至节点的数据的信息与数量。
10.根据权利要求7至9任一项所述的装置,其特征在于,
所述第二处理单元,还用于根据所述第一位置标识在上层节点中查找与所述第一位置标识相对应的第四节点;根据所述第四节点的参数确定当前只有第三数据和所述第一数据映射至所述第四节点时,在所述当前层节点和/或下层节点中查找与所述第三数据的第三位置标识相对应的、且满足执行删除的要求的第五节点,获取所述第五节点中存储的所述第三数据对应的第三存储地址,并将所述第三存储地址存储至所述第四节点。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611086330.2A CN108121500A (zh) | 2016-11-30 | 2016-11-30 | 一种数据的存取方法及装置 |
PCT/CN2017/094244 WO2018099106A1 (zh) | 2016-11-30 | 2017-07-25 | 一种数据的存取方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611086330.2A CN108121500A (zh) | 2016-11-30 | 2016-11-30 | 一种数据的存取方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108121500A true CN108121500A (zh) | 2018-06-05 |
Family
ID=62227349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611086330.2A Withdrawn CN108121500A (zh) | 2016-11-30 | 2016-11-30 | 一种数据的存取方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108121500A (zh) |
WO (1) | WO2018099106A1 (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0622710A2 (en) * | 1993-04-28 | 1994-11-02 | Allen-Bradley Company | Digital communication network with a moderator station election process |
CN102158424A (zh) * | 2010-02-02 | 2011-08-17 | 微软公司 | 利用发布和订阅机制的消息传输系统 |
CN102461092A (zh) * | 2009-04-24 | 2012-05-16 | 代尔夫特科技大学 | 用于地址查找的数据结构、方法和系统 |
CN102938784A (zh) * | 2012-11-06 | 2013-02-20 | 无锡江南计算技术研究所 | 应用于分布式存储系统中的数据存储方法和系统 |
CN104376025A (zh) * | 2013-08-16 | 2015-02-25 | 华为技术有限公司 | 分布式数据库的数据存储方法和装置 |
CN104601471A (zh) * | 2015-02-02 | 2015-05-06 | 华为技术有限公司 | 一种转发信息表的读写方法及网络处理器 |
CN104657385A (zh) * | 2013-11-22 | 2015-05-27 | 乐视网信息技术(北京)股份有限公司 | 一种节点的查找方法及装置 |
CN103631532B (zh) * | 2012-08-29 | 2016-06-15 | 国际商业机器公司 | 用于在数据存储系统中访问数据的方法和设备 |
-
2016
- 2016-11-30 CN CN201611086330.2A patent/CN108121500A/zh not_active Withdrawn
-
2017
- 2017-07-25 WO PCT/CN2017/094244 patent/WO2018099106A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0622710A2 (en) * | 1993-04-28 | 1994-11-02 | Allen-Bradley Company | Digital communication network with a moderator station election process |
CN102461092A (zh) * | 2009-04-24 | 2012-05-16 | 代尔夫特科技大学 | 用于地址查找的数据结构、方法和系统 |
CN102158424A (zh) * | 2010-02-02 | 2011-08-17 | 微软公司 | 利用发布和订阅机制的消息传输系统 |
CN103631532B (zh) * | 2012-08-29 | 2016-06-15 | 国际商业机器公司 | 用于在数据存储系统中访问数据的方法和设备 |
CN102938784A (zh) * | 2012-11-06 | 2013-02-20 | 无锡江南计算技术研究所 | 应用于分布式存储系统中的数据存储方法和系统 |
CN104376025A (zh) * | 2013-08-16 | 2015-02-25 | 华为技术有限公司 | 分布式数据库的数据存储方法和装置 |
CN104657385A (zh) * | 2013-11-22 | 2015-05-27 | 乐视网信息技术(北京)股份有限公司 | 一种节点的查找方法及装置 |
CN104601471A (zh) * | 2015-02-02 | 2015-05-06 | 华为技术有限公司 | 一种转发信息表的读写方法及网络处理器 |
Also Published As
Publication number | Publication date |
---|---|
WO2018099106A1 (zh) | 2018-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109376156B (zh) | 读取具有存储感知的混合索引的方法 | |
CN105320775B (zh) | 数据的存取方法和装置 | |
CN106339450B (zh) | 一种树形数据的索引方法 | |
CN110268399A (zh) | 用于维护操作的合并树修改 | |
US20100246446A1 (en) | Tree-based node insertion method and memory device | |
JP2004518226A (ja) | データベースシステムおよびクエリオプティマイザ | |
US20160294693A1 (en) | Routing Lookup Method and Device, and Construction Method for B-tree Structure | |
CN104850572A (zh) | HBase非主键索引构建与查询方法及其系统 | |
CN102110171B (zh) | 基于树形结构的布鲁姆过滤器的查询与更新方法 | |
KR20190020105A (ko) | 스트리밍 데이터의 분배 처리 방법 및 디바이스 | |
CN104423982B (zh) | 请求的处理方法和处理设备 | |
CN110928882B (zh) | 一种基于改进红黑树的内存数据库索引方法及系统 | |
CN104021223B (zh) | 一种集群数据库测点的访问方法及装置 | |
CN104408128B (zh) | 一种基于b+树异步更新索引的读优化方法 | |
CN110413711A (zh) | 一种差异数据获取方法及其存储介质 | |
CN110020272A (zh) | 缓存方法、装置以及计算机存储介质 | |
CN109542339B (zh) | 数据分层访问方法、装置、多层存储设备和存储介质 | |
CN105025013B (zh) | 基于优先级Trie树的动态IP匹配模型的建立方法 | |
CN105095457B (zh) | 历史数据存储管理方法 | |
CN107807793B (zh) | 分布式计算机存储系统中数据副本异构存储与访问方法 | |
CN108763458A (zh) | 内容特征查询方法、装置、计算机设备及存储介质 | |
CN110597805B (zh) | 一种内存索引结构处理方法 | |
CN104778212B (zh) | 地图数据生成方法和装置、地图数据读取方法和装置 | |
CN107480242A (zh) | 一种创建文件系统快照树的方法及系统 | |
CN108121500A (zh) | 一种数据的存取方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20180605 |
|
WW01 | Invention patent application withdrawn after publication |