一种基于网格索引的动态top‑k查询方法技术

技术编号:16885916 阅读:140 留言:0更新日期:2017-12-27 03:43
本发明专利技术公开了一种基于网格索引的动态top‑k查询方法,将数据所在的区域划分成等大的若干个网格单元,每个网格单元内包括了落在该区域的数据,建立TTI树形索引,将网格插入索引中,从TTI索引顶层躯干节点开始,向左右遍历通过网格中已有的概要信息计算网格的k支配能力,直至找到判定单元,利用判定单元划分影响区和自由区,并在影响区中计算top‑k结果集;若属性值发生变化的数据落在自由区,则不需要更新top‑k结果集。若数据变化发生在自由区,则经过插入和删除数据步骤后从步骤3开始重新计算top‑k结果集。本发明专利技术的有益效果是能够适应数据量的迅速增加和数据的动态变化,查询效率高。

A method of top dynamic query K based on grid index

The invention discloses a method for top dynamic query K grid index based on the data, the region is divided into several grid units, each grid unit includes a fall in the area of data, the establishment of TTI tree index, the mesh inserts the index, the TTI index from the beginning of the top trunk node. Command to the left traverse through the summary information available in the grid computing grid K, to find the decision unit, using decision unit division area and free zone, and in the affected area in the calculation of top k result set; if the attribute value changes the data fall in the free zone, you do not need to update the top k the result set. If the data changes in the free zone, after insert and delete data after the start from step 3 to calculate top k result set. The beneficial effect of the invention is that it can adapt to the rapid increase of the amount of data and the dynamic change of the data, and the efficiency of the query is high.

【技术实现步骤摘要】
一种基于网格索引的动态top-k查询方法
本专利技术属于计算机
,涉及一种基于网格索引的动态top-k查询方法。
技术介绍
随着移动计算的快速发展,top-k查询及其计算方法得到了众多研究者的关注,主要是因为top-k查询结果集在很多应用中都有着非常重要的作用,例如社交网站好友查询、电子商务商品查询、股票交易优股查询、购买房产查询等等。top-k查询选取一个偏好函数返回前k个函数值最小(或最大)的数据对象作为结果,对于数据分析者寻找有意义对象进行决策支持具有十分重要的意义。top-k查询通过用户的喜好返回k个最佳纪录,用户偏好由选择条件和排序函数组成,同的用户不仅对偏好函数中的参数有着不同规定,关注的属性维度也不一样。随着数据量增长,并且在实际应用中,数据对象之间的互相影响或者由于数据对象本身的因素可能导致目标对象的属性值发生改变。因此使用静态的原始数据会导致查询结果的不准确。而传统的算法在动态变化的大量数据集上效率较低,传统的top-k算法通过对所有记录进行遍历和全排序从而返回得分最高的k个,这种情况下无论k取多少都不会影响算法的运行时间,如果在数据集合较大时,用户只要求选出本文档来自技高网...
一种<a href="http://www.xjishu.com/zhuanli/55/201710713552.html" title="一种基于网格索引的动态top‑k查询方法原文来自X技术">基于网格索引的动态top‑k查询方法</a>

【技术保护点】
一种基于网格索引的动态top‑k查询方法,其特征在于包括如下步骤:步骤1:首先将二维数据所在的区域划分成等大的若干个网格单元,每个网格单元内包括了落在该区域的数据,通过数据的属性值判断它所属的网格单元;步骤2:建立TTI树形索引,索引包括躯干及左右分支部分,将网格插入索引中,索引上的每个节点用来存储一个网格单元;步骤3:从TTI索引顶层躯干节点开始,向左右遍历通过网格中已有的概要信息计算网格的k支配能力,直至找到判定单元,利用判定单元划分影响区和自由区,并在影响区中计算top‑k结果集;步骤4:若属性值发生变化的数据落在自由区,则不需要更新top‑k结果集。若数据变化发生在自由区,则经过插入和...

【技术特征摘要】
1.一种基于网格索引的动态top-k查询方法,其特征在于包括如下步骤:步骤1:首先将二维数据所在的区域划分成等大的若干个网格单元,每个网格单元内包括了落在该区域的数据,通过数据的属性值判断它所属的网格单元;步骤2:建立TTI树形索引,索引包括躯干及左右分支部分,将网格插入索引中,索引上的每个节点用来存储一个网格单元;步骤3:从TTI索引顶层躯干节点开始,向左右遍历通过网格中已有的概要信息计算网格的k支配能力,直至找到判定单元,利用判定单元划分影响区和自由区,并在影响区中计算top-k结果集;步骤4:若属性值发生变化的数据落在自由区,则不需要更新top-k结果集。若数据变化发生在自由区,则经过插入和删除数据步骤后从步骤3开始重新计算top-k结果集。2.按照权利要求1所述一种基于网格索引的动态top-k查询方法,其特征在于:所述步骤2中TTI索引中存在躯干节点为网格Ci,j,躯干节点的左孩子为网格Ci-1,j、右孩子为Ci,j-1、中孩子为Ci-1,j-1,将数据空间进行网格划分,网格在每个属性维度上的长度为δ,根据网格下标建立TTI树形索引,记录根节点的下标O.i,O.j,给出数据点p,在1*1的二维空间中,它的属性值为(p.x1,p.x2),利用数据点p所在网格节点的下标值p.i=[p.x1/δ],p.j=[p.x2/δ],和根节点o的下标值O.i,O.j,从根节点开始向下遍历,每向下一层p.i和p.j加1,当p.i=O.i或者p.j=O.j时,说明已经找到p所在的层,此时考虑三种情况:1)p.i=O.i∩p.j=O.j,p为当前层次的躯干节点,算法结束;2)p.i=O.i∩p.j≠O.j,说明p位于当前层次的右分支,O.j-p.j的值为指针向右走的步数;3)p.i≠O.i∩p.j=O...

【专利技术属性】
技术研发人员:秦小麟邓丹苹李博涵鲍芝峰郑伟王雅楠关东海
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

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

1