[发明专利]一种大数据索引的排序方法有效
申请号: | 201410040926.3 | 申请日: | 2014-01-28 |
公开(公告)号: | CN103745008A | 公开(公告)日: | 2014-04-23 |
发明(设计)人: | 石冰;韩立新 | 申请(专利权)人: | 河海大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 南京苏高专利商标事务所(普通合伙) 32204 | 代理人: | 柏尚春 |
地址: | 210000 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 索引 排序 方法 | ||
1.一种大数据索引的排序方法,其特征在于:包括以下步骤:
步骤1:根据索引关键字的取值范围将索引初始划分为Size/Alpha个区间,其中,为规模控制参数,Alpha为分布密度差异系数,N为索引项的总数,同时根据索引项的取值范围和划分的区间数平均地设定每个区间索引关键字值的上限;
步骤2:根据步骤1中的每个区间索引关键字值的上限创建区间表,所述区间表管理区间的动态划分,每个区间内索引项最多不超过Size个,在每个区间内建立一个用于存放区间内索引项的二叉排序树,并设定二叉排序树的索引项插入方法;
步骤3:在每个二叉排序树中的每个结点中设定一个索引项数组,并设定索引项数组中存储索引项的上限以及索引项存储的顺序,所述索引项存储的顺序按索引项关键字从小到大的顺序从左至右依次存储;
步骤4:读取索引文件的数据,根据索引项关键字的值在区间表中查询区间,将读取的索引项按照步骤2中设定的二叉排序树的索引项插入方法插入到对应区间的二叉排序树上;
步骤5:按照区间的顺序对每个区间中相应的二叉排序树进行中序遍历,同时对每个结点中的索引项数组顺序读取,并将读取的结果保存在排序文件中。
2.根据权利要求1所述的一种大数据索引的排序方法,其特征在于:所述步骤2中二叉排序树的索引项插入方法为:
步骤201:判断查询到的区间内是否已满,如果区间已满,在查询到的区间的右侧创建一个新的区间,将原区间中的二叉排序树的右子树从原二叉排序树中分裂出来并移至新的区间中,同时将原二叉排序树的树根移至其左子树的右脊梁的末端,并根据平衡要求调整二叉排序树;如果查找到的区间未满,则进行下一步操作;
步骤202:将读取的索引项的索引关键字的值与二叉排序树的树根中存储的索引关键字值进行比较,如果读取的索引项的索引关键字值比二叉排序树的树根中的索引项数组中最左端的索引关键字的值小,则将读取的索引项递归地插入到二叉排序树的左子树中;相反,如果读取的索引关键字值比二叉排序树的树根中的索引项数组中最右端的索引关键字的值大,则将读取的索引项值递归地插入到二叉排序树的右子树中;如果读取的索引关键字的值介于索引项数组中最左端的索引关键字的值和最右端的索引关键字的值之间,查看二叉排序树的树根中设置的索引项数组中存储的数据是否已满,如果未满,则按照索引项存储的顺序将读取索引项插入到索引项数组中;如果已满,则将二叉排序树的树根进行结点分裂,产生一个新结点,把索引项数组中左半边索引项留在原结点,右半边索引项存储到新结点中;如果左子树中存储的索引项数多于右子树中存储的索引项数,则将新结点移至根的右子树的左脊梁的末端,否则将原结点移至根的左子树的右脊梁的末端。
3.根据权利要求2所述的一种大数据索引的排序方法,其特征在于:所述步骤201中根据平衡要求调整二叉排序树的方法为:如果二叉排序树的左子树上存储的索引项的数量大于二叉排序树的右子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的左子树的右脊梁末端结点做二叉排序树的根,将原根移至其右子树的左脊梁的末端;如果二叉排序树的的右子树上存储的索引项的数量大于二叉排序树的左子树存储的索引项的数量与两倍的索引项数组中存储索引项的上限之和,就将二叉排序树的右子树的左脊梁末端结点做二叉排序树的根,将原根移至其左子树的右脊梁的末端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河海大学,未经河海大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410040926.3/1.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置