CN103745008B - 一种大数据索引的排序方法 - Google Patents
一种大数据索引的排序方法 Download PDFInfo
- Publication number
- CN103745008B CN103745008B CN201410040926.3A CN201410040926A CN103745008B CN 103745008 B CN103745008 B CN 103745008B CN 201410040926 A CN201410040926 A CN 201410040926A CN 103745008 B CN103745008 B CN 103745008B
- Authority
- CN
- China
- Prior art keywords
- index
- index entry
- tree
- interval
- binary sort
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种大数据索引的排序方法,采用分治的思想按索引的关键字对索引数据进行动态地分区排序,对每个分区内的索引数据,采用类似于平衡二叉树的方法组成一棵包括多个索引项的结点构成的二叉排序树。在读入数据的同时进行排序,每读入一个索引项,就按索引项关键字值放入相应的区间进行排序,数据读入完成,排序也就完成了。读完了数据只要按分区顺序对相应的二叉排序树进行中序遍历就得到了排序结果。本发明在高配置的计算机系统上使用,充分发挥计算机的性能,更加符合大数据对算法复杂性的要求。本发明克服了传统的内排序算法不适合处理大数据的不足,采用本发明进行索引排序有效提高了算法的效率。
Description
技术领域
本发明属于大数据处理的技术领域,特别涉及一种大数据索引的排序方法。
背景技术
大数据来啦!Facebook分享的内容条数达10亿,数据量达到TB数量级。作为传统数据处理的基本技术,排序在大数据时代仍然是十分重要的一个基本操作,与此前不同的是大数据对包括排序算法在内的所有算法的时间复杂性要求不再满足于多项式时间复杂度,甚至像O(N*㏒N)这样的所谓最优的复杂度,它期望达到线性复杂度:Ο(N)。
现代计算机与50年前甚至10多年前的计算机相比已不可同日而语,64位机器已相当普遍,地址空间达到了264,AMD64架构支持52位(4PB)的地址总线和48位(256TB)的虚拟地址空间。DELL机器实际配置的物理内存达96G,标配硬盘容量到了1.5TB,三级缓存也是20年前不可想象的12M。Linux系统的虚拟内存可达实际物理内存的2倍,而内存页面大小可为4M,64位的Linux则分别支持46位(64TB)的物理地址空间和47位(128T)的进程虚拟地址空间,64位的windows7最大支持128G的内存。不同平台上64位的编译器已经很普遍,可以说现代计算机的高性能和高配置为大数据处理带来了方便。
但传统的排序算法并不适合直接移植到现代计算机上来就可以处理大数据。
经典排序算法包括插入排序、选择排序、交换排序、归并排序和分布排序等五个类型。插入排序、选择排序、交换排序、归并排序等这类比较排序都采用“比较”和“移动”两个基本操作,以顺序存储结构存放待排序数据。插入排序在数据量很小时是高效的,但其时间复杂度达到了Ο(N2)。树形选择排序利用前期的工作减少了后期的工作量,其中的堆排序被认为是经典排序算法中最好的,其时间复杂度达到了Ο(N*㏒N),但有比较大的常数因子。交换排序中的快速排序在最坏情况下的时间复杂度达到了Ο(N2),因为它是递归的,在数据量大的时候是不能容忍的。归并排序尽管时间复杂度比较理想,但其空间复杂度达到了Ο(N)。分布排序包括基数排序、计数排序和桶排序等这类所谓线性时间排序,也有其局限性。基数排序采用“分配”和“收集”两个基本操作,按多关键字排序的思想,以每个关键字在其取值范围内的每个值组织一个链表来存储数据,它是针对关键字在一个较小范围内的排序算法。计数排序对关键字的取值范围有限制,即最大元素值小于元素个数,辅存空间大。桶排序是以假设关键字均匀分布为基础。位图算法的限制是排序数不能太大,数据无重复,只能是整数或映射到整数的数据。总之,这些经典的排序算法都不能充分发挥现代计算机的性能,也不适合大数据环境。
以归并为核心的外排序算法因为要多次读、写文件也不适合于大数据环境。即使是在集群上运行的PSRS这类超级快速并行排序算法,因为负载均衡的难题、通信的瓶颈和不可避免的归并等原因其加速效果也有限,原因是并行排序算法也需要合适的内排序算法作基础。在互联网的今天,我们都在说:数据堆积、知识贫乏。信息检索的重要性是不言而喻的,而索引在检索中的重要性则是众所周知,索引的排序是检索的关键操作之一。
现有的排序算法无论是内排序还是外排序抑或是并行排序一方面都没有充分发挥现代计算机的性能,另一方面也难以满足大数据处理的需要。不管将来的集群有多大,也不论“云”有多广,大数据的排序,是大数据分析中的基础工作。利用现代计算机的特点并充分地发挥它的性能,开发在单机上运行的大数据处理的排序算法有其必要性和现实性。
发明内容
发明目的:本发明的目的在于针对现有技术的不足,提供一种有效提高算法效率的大数据索引的排序方法。
技术方案:为了达到上述发明目的,本发明提供一种大数据索引的排序方法,包括以下步骤:
步骤1:根据索引关键字的取值范围将索引初始划分为Size/Alpha个区间,其中,为规模控制参数,Alpha为分布密度差异系数,N为索引项的总数,同时根据索引项的取值范围和划分的区间数平均设定每个区间索引关键字值的上限;
步骤2:根据步骤1中的每个区间索引关键字值的上限创建区间表,所述区间表管理区间的动态划分,每个区间内索引项最多不超过Size个,在每个区间内建立一个用于存放区间内索引项的二叉排序树,并设定二叉排序树的索引项插入方法;这种存储方案便于区间的均衡分裂,实现区间的动态划分;
步骤3:在每个二叉排序树中的每个结点中设定一个索引项数组,并设定索引项数组中存储索引项的上限以及索引项存储的顺序,所述索引项存储的顺序按索引项关键字从小到大的顺序从左至右依次存储;这就提高了存储密度,也减小了二叉排序树的高度,对二叉排序树的调整频率远低于传统的平衡二叉树构造过程中的调整频度,有效地提高了排序的效率;
步骤4:读取索引文件的数据,根据索引项关键字的值在区间表中查询区间,将读取的索引项按照步骤2中设定的二叉排序树的索引项插入方法插入到对应区间的二叉排序树上;
步骤5:按照区间的顺序对每个区间中相应的二叉排序树进行中序遍历,同时对每个结点中的索引项数组顺序读取,并将读取的结果保存在排序文件中。
进一步,所述二叉排序树的索引项插入方法为:
步骤201:判断查询到的区间内是否已满,如果区间已满,在查询到的区间的右侧创建一个新的区间,将原区间中的二叉排序树的右子树从原二叉排序树中分裂出来并移至新的区间中,同时将原二叉排序树的树根移至其左子树的右脊梁的末端,并根据平衡要求调整二叉排序树,这就实现了区间的均衡分裂,也就是进行区间的动态划分;如果查找到的区间未满,则进行下一步操作;
步骤202:将读取的索引项的索引关键字的值与二叉排序树的树根中存储的索引关键字值进行比较,如果读取的索引项的索引关键字值比二叉排序树的树根中的索引项数组中最左端的索引关键字的值小,则将读取的索引项递归地插入到二叉排序树的左子树中;相反,如果读取的索引关键字值比二叉排序树的树根中的索引项数组中最右端的索引关键字的值大,则将读取的索引项值递归地插入到二叉排序树的右子树中;如果读取的索引关键字的值介于索引项数组中最左端的索引关键字的值和最右端的索引关键字的值之间,查看二叉排序树的树根中设置的索引项数组中存储的数据是否已满,如果未满,则按照索引项存储的顺序将读取索引项插入到索引项数组中;如果已满,则将二叉排序树的树根进行结点分裂,产生一个新结点,把索引项数组中左半边索引项留在原结点,右半边索引项存储到新结点中;如果左子树中存储的索引项数多于右子树中存储的索引项数,则将新结点移至根的右子树的左脊梁的末端,否则将原结点移至根的左子树的右脊梁的末端。其中,将索引项数组中存储的索引项从中间平均分成左右两组,其中左边的一组称为索引项数组中左半边索引项,右边一组称为索引项数组中右半边索引项。
更进一步,所述步骤201中根据平衡要求调整二叉排序树的方法为:如果二叉排序树的左子树上存储的索引项的数量大于二叉排序树的右子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的左子树的右脊梁末端结点做二叉排序树的根,将原根移至其右子树的左脊梁的末端;如果二叉排序树的的右子树上存储的索引项的数量大于二叉排序树的左子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的右子树的左脊梁末端结点做二叉排序树的根,将原根移至其左子树的右脊梁的末端。这就保证了二叉排序树的有序性和平衡性。
工作原理:本发明采用分治的思想按索引的关键字对索引数据进行动态地分区排序,对每个分区内的索引数据,采用类似于平衡二叉树的方法组成一棵由具有多关键字的结点构成的二叉排序树。在读入数据的同时进行排序,每读入一个索引项,就按索引项关键字值放入相应的区间进行排序,数据读入完成,排序也就完成了,一次读入即可完成排序。读完了数据只要按分区顺序对相应的二叉排序树进行中序遍历就得到了排序结果。
有益效果:与现有技术相比,本发明在高配置的计算机系统上使用,充分发挥计算机的性能,以分治的思想,结合顺序存储和链式存储的优点,更加符合大数据算法复杂性要求。本发明克服了传统的内排序算法不适合处理大量数据的不足,也不必像一般的外排序算法那样需要多次的文件读、写。采用本发明进行索引排序有效提高了算法的效率。本发明可以直接应用到大型数据库上,或者被互联网大公司直接采用,在分布式环境下也可以作为一种高效的内排序算法。
附图说明
图1为本发明的流程图;
图2为本发明中涉及的二叉排序树的结构示意图。
具体实施方式
下面对本发明技术方案进行详细说明,但是本发明的保护范围不局限于所述实施例。
如图1所示,本发明提供了一种大数据索引的排序方法,包括以下步骤:
步骤1:根据索引关键字的取值范围将索引初始划分为Size/Alpha个区间;其中,Size为规模控制参数,N是索引项的总数,Alpha为索引项关键字的分布密度差异系数,对于均匀分布Alpha取值为1,正态分布Alpha取值可以为2~10。同时根据索引项的取值范围和划分的区间数平均设定每个区间索引关键字值的上限;
步骤2:构造一个区间表来管理区间的划分及排序工作,对每个区间构造一个表项,相应每个区间有一个二叉排序树存放具体的区间内数据。这样使得区间表可以常驻内存,每棵二叉排序树即使不能常驻内存也由于其小于一个虚拟内存的页面大小而可以减少换入、换出的次数,每个区间内存储的索引项的个数的最大值为Size;
其中,二叉排序树如图2所示,图中,A为整个二叉排序树的树根,结点B、D、E、H、I和J组成了A的左子树,结点C、F、G、K、L和M组成了A的右子树,结点A、B、D和H组成了二叉排序树的左脊梁,结点B、E和J组成了A的左子树的右脊梁,结点C、F和K组成了A的右子树的左脊梁,结点J为A的左子树的右脊梁的末端,结点K为A的右子树的左脊梁的末端。
对于每个区间的排序则原则上按照二叉排序树的思想来建构一棵二叉排序树,这样在区间分裂的时候就十分方便。无疑建构平衡的二叉排序树对于将区间平均一分为二是有益的,但鉴于传统的平衡二叉树存储密度小,在建构的过程中需要不停的对树进行局部调整,且在大数据的背景下其高度太大,本发明提供了一种新的结点结构,除了左、右子树的指针域,每个结点中包括一个存储多个索引项的索引项数组,也就是说每个结点可以存储多个索引项。
步骤3:在每个二叉排序树中的每个结点中设定一个索引项数组,并设定索引项数组中存储索引项的上限为Beta,以及索引项存储的顺序,其中,索引项存储的顺序按索引项关键字从小到大的顺序从左至右依次存储;这样可以提高存储密度并减小树的高度;因直接插入排序在数据量不超过20时效率最高,所以取Beta=20。
在算法运行过程中要保持每个结点索引项数组中的数据有序,该有序性由传统的直接插入排序来完成,并且其左、右子树上的索引项数基本平衡,为保持左、右子树的平衡,二叉排序树也要做适当的调整,由于每个结点可存放多个数据项,因此其调整的频率远远低于传统的平衡二叉树构造过程中的调整频度。
步骤4:读取索引文件的数据,根据索引项关键字的值在区间表中查询区间,将读取的索引数据按照步骤2中设定的二叉排序树的索引项插入方法插入到对应区间的二叉排序树上;其中,二叉排序树的索引项插入方法为:
步骤201:判断查询到的区间内是否已满,如果区间已满,在查询到的区间的右侧创建一个新的区间,将原区间中的二叉排序树的右子树从原二叉排序树中分裂出来并移至新的区间中,同时将原二叉排序树的树根移至其左子树的右脊梁的末端,并根据平衡要求调整二叉排序树;如果查找到的区间未满,则进行下一步操作;
其中,根据平衡要求调整二叉排序树的方法为:如果二叉排序树的左子树上存储的数据量大于二叉排序树的右子树存储的数据量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的左子树的右脊梁末端结点做二叉排序树的根,将原根移至其右子树的左脊梁的末端;如果二叉排序树的的右子树上存储的数据量大于二叉排序树的左子树存储的数据量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的右子树的左脊梁末端结点做二叉排序树的根,将原根移至其左子树的右脊梁的末端。
步骤202:将读取的索引项的索引关键字的值与二叉排序树的树根中存储的索引关键字值进行比较,如果读取的索引项的索引关键字值比二叉排序树的树根中的索引项数组中最左端的索引关键字的值小,则将读取的索引项递归地插入到二叉排序树的左子树中;相反,如果读取的索引关键字值比二叉排序树的树根中的索引项数组中最右端的索引关键字的值大,则将读取的索引项值递归地插入到二叉排序树的右子树中;如果读取的索引关键字的值介于索引项数组中最左端的索引关键字的值和最右端的索引关键字的值之间,查看二叉排序树的树根中设置的索引项数组中存储的数据是否已满,如果未满,则按照索引项存储的顺序将读取索引项插入到索引项数组中;如果已满,则将二叉排序树的树根进行结点分裂,产生一个新结点,把索引项数组中左半边索引项留在原结点,右半边索引项存储到新结点中;如果左子树中存储的索引项数多于右子树中存储的索引项数,则将新结点移至根的右子树的左脊梁的末端,否则将原结点移至根的左子树的右脊梁的末端。此种调整的目的是要保持一棵二叉树上左、右子树上的数据量基本相等,采用这种二叉排序树调整方法能够在最小的调整幅度下调整二叉排序树。
步骤5:按照区间的顺序对每个区间中相应的二叉排序树进行中序遍历,同时对每个结点中的索引项数组顺序读取,并将读取的结果保存到排序文件中。
对于未来增加的索引项只要按其关键字值运用折半查找的方法放入相应的区间排序即可,这样就实现了增量式排序。
在本发明提供的方法中,在区间表搜索阶段:除对个索引项排序时会引起区间表项的移动外,所有其余的索引项排序时只需要在长度小于的区间上折半查找相应区间,其平均查找长度为
在二叉排序树插入阶段:每棵树上的索引项数为因每个结点可放置多达Beta个索引项,所以结点数约为查找插入位置的查找长度为在结点内插入时的平均查找长度为Beta/2,两项之和为: 本阶段的平均查找长度为也为
两个阶段总的平均查找长度为则整个数据集的时间复杂度为在数量级上比其他排序算法小得多,尤其在大数据的背景下,优势就更加明显。无论是与整个数据量相比还是与传统排序算法相比,它的比较次数是非常少的,只有当区间分裂和结点分裂的时候及结点内部插入的时候才做少量的移动,移动次数几乎可以忽略不计,其中,Θ在数学上表示算法的复杂度的精确阶。
Claims (2)
1.一种大数据索引的排序方法,其特征在于:包括以下步骤:
步骤1:根据索引关键字的取值范围将索引初始划分为Size/Alpha个区间,其中,为规模控制参数,Alpha为分布密度差异系数,N为索引项的总数,同时根据索引项的取值范围和划分的区间数平均地设定每个区间索引关键字值的上限;
步骤2:根据步骤1中的每个区间索引关键字值的上限创建区间表,所述区间表管理区间的动态划分,每个区间内索引项最多不超过Size个,在每个区间内建立一个用于存放区间内索引项的二叉排序树,并设定二叉排序树的索引项插入方法;
步骤3:在每个二叉排序树中的每个结点中设定一个索引项数组,并设定索引项数组中存储索引项的上限以及索引项存储的顺序,所述索引项存储的顺序按索引项关键字从小到大的顺序从左至右依次存储;
步骤4:读取索引文件的数据,根据索引项关键字的值在区间表中查询区间,将读取的索引项按照步骤2中设定的二叉排序树的索引项插入方法插入到对应区间的二叉排序树上;
步骤5:按照区间的顺序对每个区间中相应的二叉排序树进行中序遍历,同时对每个结点中的索引项数组顺序读取,并将读取的结果保存在排序文件中;
所述步骤2中二叉排序树的索引项插入方法为:
步骤401:判断查询到的区间内是否已满,如果区间已满,在查询到的区间的右侧创建一个新的区间,将原区间中的二叉排序树的右子树从原二叉排序树中分裂出来并移至新的区间中,同时将原二叉排序树的树根移至其左子树的右脊梁的末端,并根据平衡要求调整二叉排序树;如果查找到的区间未满,则进行下一步操作;
步骤402:将读取的索引项的索引关键字的值与二叉排序树的树根中存储的索引关键字值进行比较,如果读取的索引项的索引关键字值比二叉排序树的树根中的索引项数组中最左端的索引关键字的值小,则将读取的索引项递归地插入到二叉排序树的左子树中;相反,如果读取的索引关键字值比二叉排序树的树根中的索引项数组中最右端的索引关键字的值大,则将读取的索引项值递归地插入到二叉排序树的右子树中;如果读取的索引关键字的值介于索引项数组中最左端的索引关键字的值和最右端的索引关键字的值之间,查看二叉排序树的树根中设置的索引项数组中存储的数据是否已满,如果未满,则按照索引项存储的顺序将读取索引项插入到索引项数组中;如果已满,则将二叉排序树的树根进行结点分裂,产生一个新结点,把索引项数组中左半边索引项留在原结点,右半边索引项存储到新结点中;如果左子树中存储的索引项数多于右子树中存储的索引项数,则将新结点移至根的右子树的左脊梁的末端,否则将原结点移至根的左子树的右脊梁的末端。
2.根据权利要求1所述的一种大数据索引的排序方法,其特征在于:所述步骤401中根据平衡要求调整二叉排序树的方法为:如果二叉排序树的左子树上存储的索引项的数量大于二叉排序树的右子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的左子树的右脊梁末端结点做二叉排序树的根,将原根移至其右子树的左脊梁的末端;如果二叉排序树的的右子树上存储的索引项的数量大于二叉排序树的左子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的右子树的左脊梁末端结点做二叉排序树的根,将原根移至其左子树的右脊梁的末端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410040926.3A CN103745008B (zh) | 2014-01-28 | 2014-01-28 | 一种大数据索引的排序方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410040926.3A CN103745008B (zh) | 2014-01-28 | 2014-01-28 | 一种大数据索引的排序方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103745008A CN103745008A (zh) | 2014-04-23 |
CN103745008B true CN103745008B (zh) | 2016-08-31 |
Family
ID=50502026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410040926.3A Expired - Fee Related CN103745008B (zh) | 2014-01-28 | 2014-01-28 | 一种大数据索引的排序方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103745008B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317905B (zh) * | 2014-10-27 | 2017-10-03 | 深圳供电局有限公司 | 一种信息监控实时数据缓存处理的方法及系统 |
CN105117502A (zh) * | 2015-10-13 | 2015-12-02 | 四川中科腾信科技有限公司 | 一种基于大数据的检索方法 |
CN106649396B (zh) * | 2015-11-03 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 游戏等级数据的排序方法、系统及装置 |
CN105808654A (zh) * | 2016-02-29 | 2016-07-27 | 湖南蚁坊软件有限公司 | 一种针对流数据的二级排序方法 |
CN106339446A (zh) * | 2016-08-23 | 2017-01-18 | 浪潮(北京)电子信息产业有限公司 | 一种分散键值的索引建立方法及系统 |
CN108228634A (zh) * | 2016-12-15 | 2018-06-29 | 杭州华为数字技术有限公司 | 一种数据处理方法及装置 |
CN107423368B (zh) * | 2017-06-29 | 2020-07-17 | 中国测绘科学研究院 | 一种非关系数据库中的时空数据索引方法 |
CN107732898A (zh) * | 2017-09-20 | 2018-02-23 | 常州工学院 | 一种模块化多电平换流器电压均衡排序方法 |
CN107766512B (zh) * | 2017-10-23 | 2021-02-02 | 中国联合网络通信集团有限公司 | 一种日志数据存储方法和日志数据存储系统 |
CN108376054B (zh) * | 2018-01-30 | 2020-11-03 | 中国信息通信研究院 | 一种对标识数据进行索引的处理方法及装置 |
CN108647302B (zh) * | 2018-05-09 | 2022-03-25 | 联想(北京)有限公司 | 一种数据库排序方法及电子设备 |
CN108733790B (zh) * | 2018-05-11 | 2021-07-02 | 广州虎牙信息科技有限公司 | 数据排序方法、装置、服务器和存储介质 |
CN109783052B (zh) * | 2018-12-27 | 2021-11-12 | 深圳市轱辘车联数据技术有限公司 | 数据排序方法、装置、服务器及计算机可读存储介质 |
CN109902102B (zh) * | 2019-01-15 | 2022-11-18 | 国网辽宁省电力有限公司鞍山供电公司 | 一种变电站监控信息验收卡的自动化核对方法 |
CN111274349B (zh) * | 2020-01-21 | 2020-12-15 | 北方工业大学 | 一种基于信息熵的公共安全数据分级索引方法及装置 |
CN111858606A (zh) * | 2020-07-24 | 2020-10-30 | 北京金山云网络技术有限公司 | 数据处理方法、装置和电子设备 |
CN111913971A (zh) * | 2020-09-02 | 2020-11-10 | 中移(杭州)信息技术有限公司 | 存储数据的修改方法、装置、电子设备及存储介质 |
CN114417084A (zh) * | 2021-05-21 | 2022-04-29 | 深圳市智尊宝数据开发有限公司 | 信息检索方法及相关装置和介质和程序产品 |
CN114328558B (zh) * | 2021-12-30 | 2022-12-27 | 北京达佳互联信息技术有限公司 | 一种榜单更新方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159658A (zh) * | 2007-11-02 | 2008-04-09 | 华为技术有限公司 | 虚拟私用网路由查找的方法和装置 |
CN101944134A (zh) * | 2010-10-18 | 2011-01-12 | 江苏大学 | 一种海量存储系统的元数据服务器和元数据索引方法 |
CN102609530A (zh) * | 2012-02-14 | 2012-07-25 | 江苏新大诚信息技术有限公司 | 一种分区域双树结构的空间数据库索引方法 |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
CN103412897A (zh) * | 2013-07-25 | 2013-11-27 | 中国科学院软件研究所 | 一种基于分布式结构的并行数据处理方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7212817B2 (en) * | 2003-04-30 | 2007-05-01 | Hewlett-Packard Development Company, L.P. | Partitioning a database keyed with variable length keys |
CN102227725B (zh) * | 2008-12-02 | 2014-05-07 | 艾利森电话股份有限公司 | 用于匹配实体的系统和方法 |
-
2014
- 2014-01-28 CN CN201410040926.3A patent/CN103745008B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101159658A (zh) * | 2007-11-02 | 2008-04-09 | 华为技术有限公司 | 虚拟私用网路由查找的方法和装置 |
CN101944134A (zh) * | 2010-10-18 | 2011-01-12 | 江苏大学 | 一种海量存储系统的元数据服务器和元数据索引方法 |
CN102999519A (zh) * | 2011-09-15 | 2013-03-27 | 上海盛付通电子商务有限公司 | 一种数据库的读写方法及系统 |
CN102609530A (zh) * | 2012-02-14 | 2012-07-25 | 江苏新大诚信息技术有限公司 | 一种分区域双树结构的空间数据库索引方法 |
CN103412897A (zh) * | 2013-07-25 | 2013-11-27 | 中国科学院软件研究所 | 一种基于分布式结构的并行数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103745008A (zh) | 2014-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103745008B (zh) | 一种大数据索引的排序方法 | |
Yuan et al. | TripleBit: a fast and compact system for large scale RDF data | |
US5263160A (en) | Augmented doubly-linked list search and management method for a system having data stored in a list of data elements in memory | |
US20160283538A1 (en) | Fast multi-tier indexing supporting dynamic update | |
CN102968503B (zh) | 数据库系统的数据处理方法以及数据库系统 | |
CN105574212B (zh) | 一种多索引磁盘哈希结构的图像检索方法 | |
US20190065546A1 (en) | Multi stage aggregation using digest order after a first stage of aggregation | |
CN105975587A (zh) | 一种高性能的内存数据库索引组织与访问方法 | |
CN100458784C (zh) | 在数字图书馆中所采用的检索系统和检索方法 | |
CN104021213B (zh) | 一种合并关联记录的方法及装置 | |
CN101526965B (zh) | 一种磁盘文件的索引节点定位方法和装置 | |
CN111801665A (zh) | 用于大数据应用的分层局部敏感哈希(lsh)分区索引 | |
CN104112011B (zh) | 一种海量数据提取的方法及装置 | |
CN102479217A (zh) | 一种分布式数据仓库中实现计算均衡的方法及装置 | |
CN108089816A (zh) | 一种基于负载均衡的查询式重复数据删除方法及装置 | |
WO2023143095A1 (en) | Method and system for data query | |
Baranowski et al. | A study of data representation in Hadoop to optimize data storage and search performance for the ATLAS EventIndex | |
JPWO2007020849A1 (ja) | 共有メモリ型マルチプロセッサシステム及びその情報処理方法 | |
Xu et al. | Enhancing HDFS with a full-text search system for massive small files | |
US9747363B1 (en) | Efficient storage and retrieval of sparse arrays of identifier-value pairs | |
Gao et al. | An effective merge strategy based hierarchy for improving small file problem on HDFS | |
CN107273443B (zh) | 一种基于大数据模型元数据的混合索引方法 | |
CN113544683B (zh) | 数据一般化装置、数据一般化方法、程序 | |
CN105956203B (zh) | 一种信息存储方法、信息查询方法、搜索引擎装置 | |
CN108052535A (zh) | 基于多处理器平台的视觉特征并行快速匹配方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160831 Termination date: 20190128 |