一种处理地理文本Skyline查询的混合空间索引机制制造技术

技术编号:18007036 阅读:30 留言:0更新日期:2018-05-21 07:39
本发明专利技术是一种处理地理文本Skyline查询的混合空间索引机制,其中地理文本Skyline查询指的是对地理文本信息数据集实施Skyline查询。其中,地理文本数据集中的数据点同时包含地理位置信息和关键词文本信息。Inverted‑Merged R*‑Tree树(IMR*‑T)融合了R*树以及Inverted File的思想,该发明专利技术属于计算机科学中的查询索引领域。本发明专利技术致力于解决对于地理文本数据集的存储和针对该数据集进行Skyline查询的问题,在保证合理存储前提下,提升Skyline查询效率。本发明专利技术借助R*树构造策略,依据数据点空间位置分布构造多叉树,并为树的叶子节点构造Inverted File。为了提高对数据集的裁剪效率,树节点中还存储了边界框架信息。本发明专利技术广泛适用于地理文本Skyline查询的相关应用场景。

【技术实现步骤摘要】
一种处理地理文本Skyline查询的混合空间索引机制
本专利技术涉及一种处理地理文本Skyline查询的混合空间索引机制,具体涉及针对包含关键词文本属性与地理空间位置属性的数据集的有效组织存储和针对该数据集的Skyline查询,属于计算机科学中的查询索引领域。
技术介绍
随着社交网络的迅速发展,大量的附带文本关键词标签的数据(Geo-TextualData)随之产生。例如,用户在新浪微博中发布的个人微博状态(附带着地理位置和微博标签信息),餐馆在美团app上发布的饭店信息(附带着饭店的地理位置信息以及打折信息、菜品信息等)。这些数据主要包含了两个维度的信息:地理位置信息和关键词信息。针对数据点的地理空间位置信息,当前的研究中主要采用R*树结构对数据点进行有效的组织和存储,R*树的核心思想是依据数据点的空间位置分布,对分布较近的数据点进行聚合从而构造多叉索引树,其中所有的数据点都存储在多叉索引树的叶子节点中。针对同时包含了地理空间位置以及关键词文本信息的数据集合,Beckmann.N等人[1]提出了R树结构存储空间数据点,R树的核心思想就是尽可能的把空间位置比较靠近的数据点进行聚合。Wang等人[2]提出了AP(Adaptivespatial-textualPartitionTree)树索引结构用于处理基于数据流的连续空间关键词查询(ContinuesSpatial-KeywordQueriesOverStreams)。之前的处理空间关键词的索引结构要么采用空间属性优先进行构造,要么采用关键词属性优先进行构造。然而在实际构造索引的过程中,两个方案优劣性并不是一成不变的,因此为了进一步提高索引的处理效率,提出了AP树结构,该结构依据代价评估函数实时动态的在两种方案中选择代价最小的方案进行子索引结构的构造,从而极大提高索引处理效率。Chen等人[3]提出了IR树(Inverted-RTree)索引机制对数据点进行有效的组织和存储,该索引树是采用R树对于数据点的空间划分的策略对数据点进行空间划分。与此同时,索引树中的每一个节点(包括叶子节点和中间节点)都对应一个InvertedFile存储该节点中所有数据点的关键词信息。R树的缺陷主要是无法有效的解决索引节点冲突的问题,而AP树的缺陷集中在他的构造过程极为麻烦,构造的代价比较大,最后IR树的主要缺陷是其每一个节点都有一个对应的InvertedFile,这使得IR树的空间存储代价过大。上文中提到的专利申请情况如下:[1]基于负载均衡和查询日志的数据空间多维索引方法(申请日期:2016-06-13,公开号:CN106095951A)[2]多层次混合的三维空间索引方法(申请日期:2012-12-29,公开号:CN103092926A)[3]基于hbase和geohash的矢量数据空间索引方法(申请日期:2014-9-29,公开号:CN104199986A)上文中提到的文献来源于如下的会议或期刊:[1]N.Beckmann,H.Kriegel,R.Schneider,andB.Seeger,1990,“TheR*-tree:anefficientandrobustaccessmethodforpointsandrectangles,”InInternationalConferenceonManagementofData(SIGMOD),322-331.[2]X.Wang,Y.Zhang,W.Zhang,X.LinandW.Wang,2015,″AP-Tree:Efficientlysupportcontinuousspatial-keywordqueriesoverstream,″InInternationalConferenceonDataEngineering(ICDE),1107-1118.[3]L.Chen,G.CongandXCao,2013,“Anefficientqueryindexingmechanismforfilteringgeo-textualdata,”InInternationalConferenceonManagementofData(SIGMOD),749-760.
技术实现思路
本专利技术解决的技术问题:本专利技术的目的是提出一种处理地理文本Skyline查询的混合空间索引机制,致力于解决对于同时包含关键词文本信息和空间位置信息的数据集进行有效的组织、存储以及针对该数据集进行Skyline查询的问题,在保证结构清晰和存储空间合理的前提之上,提升查询的效率。本专利技术为解决其技术问题采用如下技术方案:步骤一:对数据进行预处理。原始数据集中的数据点包含空间位置信息和文本关键词信息,其中空间位置信息用经纬度坐标表示,关键词文本信息由一个关键词集合表示。(1)首先以查询点的位置为原点,构造平面直角坐标系,通过如下计算公式换算每一个数据点在该坐标系中的坐标值:p.x=p.lon-q.lonp.y=p.lat-q.lat上述公式中的p.x和p.y表示的分别是数据点p的横坐标和纵坐标,p.lon和q.lon分别表示的是数据点p与查询点q的经度值。同理,p.lat和q.lat分别表示的是数据点p和查询点q的纬度值。(2)原始的数据集中每一个数据点的关键词文本集合由若干个文本关键词构成,记作{w1,w2,...,wn},然后采用TF-IDF模型对数据点的关键词集合进行处理,计算出数据点关键词集合中每一个关键词在其所属集合中所占的比重,该比重值是一个0到1的小数值,具体的TF-IDF模型计算公式如下所示:公式中的lwd是预设定的一个平滑因子,初始值设置为0.2,length表示的是当前数据点e的关键词集合中包含的关键词的个数,tf表示的是该关键词w在整个数据集中出现的次数,num表示的是整个数据集中关键词的总数目。经过上述计算之后,可以得出关键词集合{w1,w2,...,wn}对应的比重值为{prob1,prob2,...,probn}。步骤二:基于数据集中各个数据点的地理空间位置分布,利用传统R*树的构造方法,遍历数据集中的数据点并进行插入操作,直到所有的数据点都被插入到索引树中,从而完成索引树的构造。在本步骤中,涉及到NodeOverFlow、ChoosePath、PickIrrelevant、NodeSplit策略,首先对这些策略一一介绍。NodeOverFlow节点阈值是初始定义的一个索引树节点中所能包含对象数量的一个上限值,索引树中叶子节点对应的对象数量就是该叶子节点中存储的数据点数量,而中间节点的对象数量就是该节点所包含的孩子节点个数,将对象数量的上限值记作节点溢出是指节点中包含的对象数量超出了阈值ChoosePathChoosePath策略是选择数据点插入路径的一种选择策略,所谓的选择插入路径就是依据当前待插入数据点的空间位置去选择最为合适的叶子节点去存储该数据点,评判标准是用插入代价来衡量的,插入代价就是数据点插入到叶子节点之后叶子节点扩张的面积大小,扩张的面积越大则插入代价越大,反之则插入代价越小。其中索引树节点的面积是节点所存储的MBR信息的一个形象化的体现,即在上述的二维坐标空间中,包含该节点中所有数据点的最小边界矩形的面积。当往节点中插入本文档来自技高网
...
一种处理地理文本Skyline查询的混合空间索引机制

【技术保护点】
IMR*‑T树构造的具体步骤如下所示:步骤一、首先基于数据集中各个数据点的地理空间位置分布,利用传统R*树的构造方法,即遍历数据集中的数据点并进行插入操作,以对索引树进行构造,直到所有的数据点都被插入到索引树中,则索引树的主体架构构造完毕。步骤二、为步骤一中构造的索引树的每一个叶子节点构造一个Inverted File(倒排文件),该Inverted File中存储对应叶子节点中包含的所有数据点的关键词文本信息,并且该Inverted File与叶子节点之间是一一对应的关系,因此在两者之间构造了一个由叶子节点指向Inverted File的指针。步骤三、在步骤一和步骤二构造的索引结构基础上,从叶子节点层逐层往上,为每一个索引节点添加该节点中存储的所有数据点的框架属性信息,包括最小边界矩形(MBR,Minimum Bounding Rectangle)和关键词文本相似度信息,以及指向该节点左兄弟节点的横向指针。步骤四、在建立好的IMR*‑T树的基础上,通过遍历该IMR*‑T树,以应答用户的Skyline查询请求,并返回Skyline结果。

【技术特征摘要】
1.IMR*-T树构造的具体步骤如下所示:步骤一、首先基于数据集中各个数据点的地理空间位置分布,利用传统R*树的构造方法,即遍历数据集中的数据点并进行插入操作,以对索引树进行构造,直到所有的数据点都被插入到索引树中,则索引树的主体架构构造完毕。步骤二、为步骤一中构造的索引树的每一个叶子节点构造一个InvertedFile(倒排文件),该InvertedFile中存储对应叶子节点中包含的所有数据点的关键词文本信息,并且该InvertedFile与叶子节点之间是一一对应的关系,因此在两者之间构造了一个由叶子节点指向InvertedFile的指针。步骤三、在步骤一和步骤二构造的索引结构基础上,从叶子节点层逐层往上,为每一个索引节点添加该节点中存储的所有数据点的框架属性信息,包括最小边界矩形(MBR,MinimumBoundingRectangle)和关键词文本相似度信息,以及指向该节点左兄弟节点的横向指针。步骤四、在建立好的IMR*-T树的基础上,通过遍历该IMR*-T树,以应答用户的Skyline查询请求,并返回Skyline结果。2.如权利要求书步骤一所述的IMR*-T树,其特征在于,依照数据点的空间位置分布构造R*树时包括:遍历整个数据集合按照R*树的构造策略将所有的数据点插入到IMR*-T树中。再将数据点插入到IMR*-T树的过程中会依据不同的情况采用不同的策略进行相应的处理。假设当前遍历到的待插入数据点为e,首先采用ChoosePath(选择路径)策略选择合适的插入路径,并将数据点e插入到相应的叶子节点中。插入新的数据点之后,可能会出现叶子节点溢出的情况,而所谓的节点溢出是指节点中包含的对象数量超出了某一阈值φ(这个阈值是初始定义的一个索引树节点中所能包含对象数量的一个上限值),此时采用PickIrrelevant(挑选无影响节点)策略选择该溢出节点中对所在MBR影响最小的那些节点进行重插入,重插入过程和上述数据点e的插入过程类似。当进行完重插入步骤之后,IMR*-T树中可能依旧存在叶子节点处于溢出的状态,此时按照自底向上和自左向右的顺序依次处理处于溢出状态的节点,在处理这些节点时有两种情况:(1)若当前溢出节点所在层在之前处理过程中已经采用过PickIrrelevant重插入策略去解决溢出节点的溢出问题,那么此时采用NodeSplit(节点分裂)策略对溢出节点进行分裂处理。(2)若当前溢出节点所在层在之前处理过程中未采用过PickIrrelevant数据点重插入策略,则对当前溢出节点调用PickIrrelevant策略进行重插入处理。最后直到IMR*-T树中不存在节点溢出现象,则数据点e插入成功。3.如权利要求书步骤二所述的IMR*-T树,其特征在于,在构造每个叶子节点所对应的InvertedFile时,还包括:原始的数据集中每一个数据点的关键词文本集合由若干关键词构成,对这...

【专利技术属性】
技术研发人员:郑吉平张智明张丝曼
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:江苏,32

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

1