CN111339077A - 一种空间索引结构、内存数据库数据索引方法及系统 - Google Patents

一种空间索引结构、内存数据库数据索引方法及系统 Download PDF

Info

Publication number
CN111339077A
CN111339077A CN201811556690.3A CN201811556690A CN111339077A CN 111339077 A CN111339077 A CN 111339077A CN 201811556690 A CN201811556690 A CN 201811556690A CN 111339077 A CN111339077 A CN 111339077A
Authority
CN
China
Prior art keywords
module
node
data
memory database
memory
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.)
Pending
Application number
CN201811556690.3A
Other languages
English (en)
Inventor
郭远胜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
China Mobile Group Henan Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Henan Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, China Mobile Group Henan Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201811556690.3A priority Critical patent/CN111339077A/zh
Publication of CN111339077A publication Critical patent/CN111339077A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种空间索引结构、内存数据库数据索引方法及系统,空间索引结构包括:依次连接的M模块、CP模块、MBR模块、BF模块和E模块;其中,M模块用于表示当前结点中对象的个数;CP模块用于表示指向子节点组的指针,子节点组中的子节点在内存中顺序存放;MBR模块用于表示当前结点所有对象的最小外包矩形;BF模块包括若干个长度为4比特的比特段,比特段按照结点中对应的子节点对象顺序排列;E模块用于保存每条记录的顶点信息。通过去除上下层节点间的指针,只保留指向节点组头的指针,节约了指针空间。并且对节点中最小外包矩形的坐标采用相对于父节点坐标的相对坐标表示,对坐标轴进行一定精度的量化。

Description

一种空间索引结构、内存数据库数据索引方法及系统
技术领域
本发明实施例涉及ORACLE timesten内存数据库技术领域,尤其涉及一种空间索引结构、内存数据库数据索引方法及系统。
背景技术
目前国内外对索引的研究已有多年,这其中比较常见和成熟的索引结构包括B树等等。随着近年来计算机硬件技术的飞速发展,内存价格不断降低,其容量却不断提高,由于内存数据库在管理空间数据上巨大的实时性优势,可以预见在不久的将来,内存数据库会取代磁盘数据库成为空间数据的主要载体。
在基于磁盘的数据库中,B树是公认的一种性能优良的的索引结构。B树的特点是他指向实际记录的指针都保存在叶子节点,而在非叶子节点中保存的只是用于比较的定位数据,正是由于B树的优越性,很多缓存热点技术的索引都是在B树的基础上被提出来的。
但是这些索引方法都是基于磁盘应用,而内存数据库和传统的磁盘数据库差异巨大,传统磁盘数据库性能上最大的问题在于,当中央处理器读取数据时先是将要用的数据从磁盘写到内存在从内存读取,但磁盘读取的速度跟不上内存读取的速度,这就导致处理器耗费大量时间在等待数据上,故磁盘I/O成为最大的性能瓶颈。因此在设计以磁盘数据库为基础的索引时主要考虑的是如何减少磁盘读写操作,而致使大部分传统的索引结构空间利用率低,这样对宝贵的内存资源是一种浪费。而内存数据库和磁盘数据库的一个最大的区别就是在于消除了I/O读取引起的性能瓶颈,而与此同时,随着CPU速度和内存速度之间的差距逐渐扩大,CPU对内存的读取访问越来越成为内存数据库中不可忽视的性能瓶颈。传统的索引完全没有考虑到内存数据库的这个瓶颈问题,故而不能直接套用到内存数据库上的索引。
因此,现在亟需一种内存数据库数据索引方法来解决上述问题。
发明内容
为了解决上述问题,本发明实施例提供一种克服上述问题或者至少部分地解决上述问题的一种空间索引结构、内存数据库数据索引方法及系统。
第一方面本发明实施例提供一种空间索引结构,包括:
依次连接的M模块、CP模块、MBR模块、BF模块和E模块;
其中,所述M模块用于表示当前结点中对象的个数;
所述CP模块用于表示指向子节点组的指针,所述子节点组中的子节点在内存中顺序存放;
所述MBR模块用于表示所述当前结点所有对象的最小外包矩形;
所述BF模块包括若干个长度为4比特的比特段,所述比特段按照结点中对应的子节点对象顺序排列;
所述E模块用于保存每条记录的顶点信息。
第二方面本发明实施例提供了一种内存数据库数据索引方法,包括:
在内存数据库中进行数据查询;
在所述内存数据库中进行数据插入;
在所述内存数据库中进行数据删除。
第三方面本发明实施例提供了一种缓存动态管理系统,包括:
数据查询模块,用于在内存数据库中进行数据查询;
数据插入模块,用于在所述内存数据库中进行数据插入;
数据删除模块,用于在所述内存数据库中进行数据删除。
第四方面本发明实施例提供了一种电子设备,包括:
处理器、存储器、通信接口和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述内存数据库数据索引方法。
第五方面本发明实施例提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述的内存数据库数据索引方法。
本发明实施例提供的空间索引结构、内存数据库数据索引方法及系统通过去除上下层节点间的指针,只保留指向节点组头的指针,节约了指针空间。并且对节点中最小外包矩形的坐标采用相对于父节点坐标的相对坐标表示,对坐标轴进行一定精度的量化。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种空间索引结构示意图;
图2是本发明实施例提供的一种内存数据库数据索引方法流程示意图;
图3是本发明实施例提供的一种内存数据库数据索引系统结构示意图;
图4是本发明实施例提供的电子设备的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前的索引方式都是基于磁盘应用,而内存数据库和传统的磁盘数据库差异巨大,传统磁盘数据库性能上最大的问题在于,当中央处理器读取数据时先是将要用的数据从磁盘写到内存在从内存读取,但磁盘读取的速度跟不上内存读取的速度,这就导致处理器耗费大量时间在等待数据上,故磁盘I/O成为最大的性能瓶颈。因此在设计以磁盘数据库为基础的索引时主要考虑的是如何减少磁盘读写操作,而致使大部分传统的索引结构空间利用率低,这样对宝贵的内存资源是一种浪费。而内存数据库和磁盘数据库的一个最大的区别就是在于消除了I/O读取引起的性能瓶颈,而与此同时,随着CPU速度和内存速度之间的差距逐渐扩大,CPU对内存的读取访问越来越成为内存数据库中不可忽视的性能瓶颈。传统的索引完全没有考虑到内存数据库的这个瓶颈问题,故如果直接套用到内存数据库肯定是不适合的。
针对上述现有技术中存在的问题,图1是本发明实施例提供的一种空间索引结构示意图,如图1所示,包括:
依次连接的M模块1、CP模块2、MBR模块3、BF模块4和E模块5;
其中,所述M模块1用于表示当前结点中对象的个数;
所述CP模块2用于表示指向子节点组的指针,所述子节点组中的子节点在内存中顺序存放;
所述MBR3模块用于表示所述当前结点所有对象的最小外包矩形;
所述BF4模块包括若干个长度为4比特的比特段,所述比特段按照结点中对应的子节点对象顺序排列;
所述E模块5用于保存每条记录的顶点信息。
需要说明的是,本发明实施例通过分析已有的一些成熟的单维缓存热点索引所采用的技术,鉴别哪些是适合移植到多维索引中的,并力争根据缓存敏感技术已有的理论,通过对索引树索引进行改造和优化,设计出一种新型的基于内存数据库的空间索引结构,该索引结构也可称为缓存热点索引树,简称H索引树。本发明实施例提供的H索引树得设计思路是尽量减少节点中的冗余信息,增加节点利用率,使得一次能向缓存加入更多信息,减少缓存适配率。
具体的,本发明实施例提供的H索引树在节点的设计上借鉴了B树的思想,主要移除了节点和子节点之间的指针,只保留指向子节点组的头部的指针;考虑到在索引中光是移除节点间的指针所带来的缓存敏感化效果并不是很明显,故对最小外包矩形进行压缩处理,去除了子节点和父节点间重复的边界信息,对最小外包矩形的顶点坐标采取相对于父节点矩形的相对坐标表示,并对其所在的坐标空间进行一定精度的量化,对数据只保存其量化后的值。通过以上者一连串的优化和改造,大大增加了H树的缓存敏感性能,使其适合内存数据库的应用环境。
如图1所示,M模块1代表当前结点中对象的个数;CP模块2表示的是指向子结点组的指针,子节点在内存中顺序存放;MBR模块3代表包围这个结点所有子节点对象的最小外包矩形,通过这个位所表示的最小外包矩形的坐标就可以算出子节点的对象经过量化处理后的相对表示坐标;BF模块4定义为由若干个长度为4比特的比特段组成,这些比特段按节点中对应的子节点对象的顺序排列,每个比特段对应相应位置的记录标志着对应记录的哪几条边储存在结点中,哪些从父结点中继承而来。E模块5定义为保存了每条记录的顶点信息。
本发明实施例提供的空间索引结构通过去除上下层节点间的指针,只保留指向节点组头的指针,节约了指针空间。并且对节点中最小外包矩形的坐标采用相对于父节点坐标的相对坐标表示;对坐标轴进行一定精度的量化。
在上述实施例的基础上,当执行插入删除操作时,通过检测所述M模块的取值,来进行正确定位。
可以理解的是,当H索引树执行插入或者删除操作时都要进行节点定位,这就需要得到每个节点中最小外包矩形的边界信息,但是如果有的节点的矩形和最小外包矩形有重合的边界,那么在这个节点中的边界信息就是不完整的,此时本发明实施例提供一种通过检测M模块取值的方式进行正确定位。具体的,当执行插入删除操作时,检查M模块的取值,当M模块的取值为负数就表示这个结点中的最小外包矩形各个边都没有从父结点中继承,反之若为正数就说明这个最小外包矩形的边界信息不完全,需要通过父节点来补全节点信息。而当M模块的取值为正数时,则表示节点内对象的个数,因此只有知道了M模块的取值才能正确访问E位。当M模块的取值为负数时,就无需从父节点取得信息,则BF位就没有存在的必要了,此位可以不用,从而可以在这种情况下节约了节点空间。
在上述实施例的基础上,图2是本发明实施例提供的一种内存数据库数据索引方法流程示意图,如图2所示,包括:
201、在内存数据库中进行数据查询;
202、在所述内存数据库中进行数据插入;
203、在所述内存数据库中进行数据删除。
由上述实施例的内容可知,本发明实施例提供了一种H索引树,该H索引树能够增加节点利用率,使得一次能像缓存加入更多信息,减少了缓存适配率。那么具体的索引过程可以分为三个类别的数据操作,主要包括数据查询、数据插入以及数据删除三个方面。
在上述实施例的基础上,所述在内存数据库中进行数据查询包括:
在遍历每个节点时判断M模块的值是正数或负数;
若所述M模块的值为正数,则根据节点的BF模块的值和MBR模块的值还原边界信息后再进行查询。
由上述实施例的内容可知,本发明实施例提供了一个H索引树,那么在使用该H索引树进行数据查询时,会先在遍历每个结点时判断M模块的值的正负,如果M模块的值为正数,则说明这个结点中没有最小外包矩形从其双亲结点中继承任何一条边的信息,也就是所有最小外包矩形的边的信息都需要保存在节点中,那么这样的搜索算法在传统的R树的基础上只使用了相对坐标表示和坐标轴量化的技术。这样的话查询算法和普通的R树查询算法差异很相似,唯一的区别就是H树需要将需要查询的矩形区域按一定得算法和节点中的最小外包矩形进行比较,由于这些最小外包矩形都是经过相对坐标表示和坐标轴量化处理的,所以在比较时,先要将需查询矩形进行相对化表示以及作出其量化后的坐标,再进行比较确定和哪些节点中的矩形重合。当M模块的值为正数,这时说明节点中并没有包含最小外包矩形所有边的信息,这时就需要根据节点的BF模块的值和MBR模块的值来还原边界信息,再通过上述查询过程重新进行查询。
例如,给定一个查询矩形Q的具体算法如下:
void*search_node(node,Q){
if
(node.M为正)
{
读取node.BF;
从MBR node.恢复边界信息;
}
将根节点压入最初空的堆栈S中;
循环执行
{
从堆栈S中出栈一个节点N;
R=QRMBR(Q);//QRMBR()为对Q进行量化相对化的函数;
If(N不是叶子节点){
判断节点N中每一个记录E
T=QRMBR(E.RMBR)
if(T与R重叠)
将E.CP压入堆栈S;
}
else
{
检查N中的每个记录来确定E;
If(T覆盖R)
将E.CP加入结果集中;
}
}。
在上述实施例的基础上,所述在所述内存数据库中进行数据插入,包括:
定位被插入对象所在的节点,并将所述节点压入堆栈;
向所述节点压入对象数据。
可以理解的是,本发明实施例提供的H索引树还能够进行数据插入功能。
具体的,首先通过()locateleaf函数定位被插入对象所在的节点,并将这个节点压入堆栈,以便之后需要递归时从堆栈弹出访问。然后向定位的节点压入对象数据,并检测是否会发生溢出,若溢出则调用splitnode()函数对发生溢出节点进行分裂操作,然后在分裂后的两个节点中确定哪个节点更适合插入对象。成功插入后,就对分裂后的两个节点的最小外包矩形是否和父节点有重合的边际,并在M模块进行相应标记,若此节点拥有完整的最小外包矩形的信息则将M模块标为负数,反之则标为正数。再检测节点中的MBR模块,看其值是否被更改,若需要更改则调用updateMBR()对其父节点进行调整。由updateMBR()可能又会导致最小外包矩形的改变,若改变则再次更改M模块的值。
例如,假定给定要插入的对象Q,则算法为:
void*insert(root,Q){
{
locateleaf(root,Q);//寻找叶子节点
putentry(node,Q);//插入
if(发生溢出){
splitnode(node,Q);//分裂节点
}
locateleaf(root,Q)
{
令N=root
循环
{
If(N是叶子节点)
返回N;
else
将新的对象插入该节点的各个MBR,分别计算面积,令N为面积增加最小的那个节点;
}
}
putentry(node,Q)
{
计算插入后所需要的空间;
if(空间大于节点最大容量)
返回溢出;
向节点插入记录;
if(node.MBR没有包含Q.MBR){
updateMBR(node.MBR);//更新外接矩形;
}
返回无溢出;
}
splitnode(node,Q){
将节点中原先的记录和需插入的记录分成两组;
判断两组的node类型;
创建新节点newnode;
将两组记录分别插入node和newnode;
node=pop(堆栈列表s);//调出上级节点;
putentry(node,newnode.MBR);
if(溢出)
splitnode(node,node.MBR);//递归调用
}
UpdateMBR(MBR)
{
node=pop(堆栈S);
if(node.MBR包含MBR)
返回;
计算节点所需空间;
If(空间大于节点最大值){
调用splitnode();//对父节点进行分裂;
返回;
}
UpdateMBR(node.MBR);
}。
在上述实施例的基础上,所述在所述内存数据库中进行数据删除,包括:
确定待删除的索引叶子节点;
删除所述索引叶子节点并调整索引树各个节点的坐标。
可以理解的是,本发明实施例提供的H索引树还能够进行数据删除功能。
具体的,首先找到待删除的索引叶子节点,由于索引树中的非叶子节点可能互相覆盖,因此删除算法可能要搜索多个分支;然后删除该索引叶子节点;最后对索引树进行调整,本发明实施例提供的H索引树和传统的索引树区别就在于多了一步对调整后的MBR进行重新计算得出该节点进行坐标相对化表示以及坐标轴量化后的坐标。
具体得算法如下:
void*delete(root,Q){
node=findleaf(root,Q);//找到包含要删除对象的叶子节点;
删除指向R记录;
condense(node);//调整节点;
返回;
}
findleaf(root,Q)
{
N=root;
If(N是叶子节点)
{
If(在N中查找匹配的记录Q)
return Q;
else return NULL;
}
将所有覆盖Q的记录加入队列E;
If(E为空)
return NULL;
对E中的记录逐一调用findleaf();
}
Condense(node)
{
If(L中的记录不小于m)//小于记录最小数目;
return;
删除L,将记录加入队列E;
递归调用condense();
将E中的对象重新插入;
返回;
}。
图3是本发明实施例提供的一种内存数据库数据索引系统结构示意图,如图3所示,包括:数据查询模块301、数据插入模块302和数据删除模块303,其中:
数据查询模块301用于在内存数据库中进行数据查询;
数据插入模块302用于在所述内存数据库中进行数据插入;
数据删除模块303用于在所述内存数据库中进行数据删除。
具体的如何通过数据查询模块301、数据插入模块302和数据删除模块303可用于执行图2所示的内存数据库数据索引方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本发明实施例提供的内存数据库数据索引系统通过去除上下层节点间的指针,只保留指向节点组头的指针,节约了指针空间。并且对节点中最小外包矩形的坐标采用相对于父节点坐标的相对坐标表示,对坐标轴进行一定精度的量化。
在上述实施例的基础上,所述数据查询模块包括:
遍历判断单元,用于在遍历每个节点时判断M模块的值是正数或负数;
查询单元,用于若所述M模块的值为正数,则根据节点的BF模块的值和MBR模块的值还原边界信息后再进行查询。
在上述实施例的基础上,所述数据插入模块包括:
定位单元,用于定位被插入对象所在的节点,并将所述节点压入堆栈;
插入单元,用于向所述节点压入对象数据。
在上述实施例的基础上,所述数据删除模块包括:
确定单元,用于确定待删除的索引叶子节点;
删除单元,用于删除所述索引叶子节点并调整索引树各个节点的坐标。
本发明实施例提供一种电子设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中:
图4是本发明实施例提供的电子设备的结构框图,参照图4,所述电子设备,包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和总线404,其中,处理器401,通信接口402,存储器403通过总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行如下方法:在内存数据库中进行数据查询;在所述内存数据库中进行数据插入;在所述内存数据库中进行数据删除。
本发明实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:在内存数据库中进行数据查询;在所述内存数据库中进行数据插入;在所述内存数据库中进行数据删除。
本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:在内存数据库中进行数据查询;在所述内存数据库中进行数据插入;在所述内存数据库中进行数据删除。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行每个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (9)

1.一种空间索引结构,其特征在于,包括:
依次连接的M模块、CP模块、MBR模块、BF模块和E模块;
其中,所述M模块用于表示当前结点中对象的个数;
所述CP模块用于表示指向子节点组的指针,所述子节点组中的子节点在内存中顺序存放;
所述MBR模块用于表示所述当前结点所有对象的最小外包矩形;
所述BF模块包括若干个长度为4比特的比特段,所述比特段按照结点中对应的子节点对象顺序排列;
所述E模块用于保存每条记录的顶点信息。
2.根据权利要求1所述的空间索引结构,其特征在于,当执行插入删除操作时,通过检测所述M模块的取值,来进行正确定位。
3.一种根据权利要求1或2所述的空间索引结构实现的内存数据库数据索引方法,其特征在于,包括:
在内存数据库中进行数据查询;
在所述内存数据库中进行数据插入;
在所述内存数据库中进行数据删除。
4.根据权利要求3所述的方法,其特征在于,所述在内存数据库中进行数据查询包括:
在遍历每个节点时判断M模块的值是正数或负数;
若所述M模块的值为正数,则根据节点的BF模块的值和MBR模块的值还原边界信息后再进行查询。
5.根据权利要求3所述的方法,其特征在于,所述在所述内存数据库中进行数据插入,包括:
定位被插入对象所在的节点,并将所述节点压入堆栈;
向所述节点压入对象数据。
6.根据权利要求3所述的方法,其特征在于,所述在所述内存数据库中进行数据删除,包括:
确定待删除的索引叶子节点;
删除所述索引叶子节点并调整索引树各个节点的坐标。
7.一种内存数据库数据索引系统,其特征在于,包括:
数据查询模块,用于在内存数据库中进行数据查询;
数据插入模块,用于在所述内存数据库中进行数据插入;
数据删除模块,用于在所述内存数据库中进行数据删除。
8.一种电子设备,其特征在于,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求3至6任一所述的方法。
9.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求3至6任一项所述的方法。
CN201811556690.3A 2018-12-19 2018-12-19 一种空间索引结构、内存数据库数据索引方法及系统 Pending CN111339077A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811556690.3A CN111339077A (zh) 2018-12-19 2018-12-19 一种空间索引结构、内存数据库数据索引方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811556690.3A CN111339077A (zh) 2018-12-19 2018-12-19 一种空间索引结构、内存数据库数据索引方法及系统

Publications (1)

Publication Number Publication Date
CN111339077A true CN111339077A (zh) 2020-06-26

Family

ID=71183230

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811556690.3A Pending CN111339077A (zh) 2018-12-19 2018-12-19 一种空间索引结构、内存数据库数据索引方法及系统

Country Status (1)

Country Link
CN (1) CN111339077A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609530A (zh) * 2012-02-14 2012-07-25 江苏新大诚信息技术有限公司 一种分区域双树结构的空间数据库索引方法
CN108628951A (zh) * 2018-04-03 2018-10-09 苏州舆图数据科技有限公司 基于文档模型的空间数据块状组织存储与化简压缩方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609530A (zh) * 2012-02-14 2012-07-25 江苏新大诚信息技术有限公司 一种分区域双树结构的空间数据库索引方法
CN108628951A (zh) * 2018-04-03 2018-10-09 苏州舆图数据科技有限公司 基于文档模型的空间数据块状组织存储与化简压缩方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李灿辉;: "基于内存数据库的空间索引结构CSR树性能研究" *

Similar Documents

Publication Publication Date Title
US9678969B2 (en) Metadata updating method and apparatus based on columnar storage in distributed file system, and host
CN110019218B (zh) 数据存储与查询方法及设备
US20170083573A1 (en) Multi-query optimization
US20070250517A1 (en) Method and Apparatus for Autonomically Maintaining Latent Auxiliary Database Structures for Use in Executing Database Queries
CN109582677B (zh) 基于孩子节点的多粒度分布式读写锁的r树索引优化方法
US11995059B2 (en) Database index and database query processing method, apparatus, and device
US9390111B2 (en) Database insert with deferred materialization
CN107247624A (zh) 一种面向Key‑Value系统的协同优化方法及系统
CN112965939A (zh) 一种文件合并方法、装置和设备
US9275091B2 (en) Database management device and database management method
US10558636B2 (en) Index page with latch-free access
CN109189343B (zh) 一种元数据落盘方法、装置、设备及计算机可读存储介质
CN109408539B (zh) 数据操作方法、装置、服务器和存储介质
CN111078705A (zh) 基于Spark平台建立数据索引方法及数据查询方法
WO2022121274A1 (zh) 一种存储系统中元数据管理方法、装置及存储系统
US11080332B1 (en) Flexible indexing for graph databases
CN113722320A (zh) 一种基于并行的图数据索引的持久化方法
US20060122963A1 (en) System and method for performing a data uniqueness check in a sorted data set
US8548980B2 (en) Accelerating queries based on exact knowledge of specific rows satisfying local conditions
CN116089414B (zh) 基于海量数据场景的时序数据库写入性能优化方法及装置
CN116881243A (zh) 基于时间序列数据特征的学习型索引方法及系统
CN116049193A (zh) 数据存储方法及装置
CN115469810A (zh) 一种数据获取方法、装置、设备及存储介质
US10762139B1 (en) Method and system for managing a document search index
CN111339077A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200626

RJ01 Rejection of invention patent application after publication