基于关系R树的不确定性时态数据管理与查询方法与流程

文档序号:18899903发布日期:2019-10-18 21:47阅读:494来源:国知局
基于关系R树的不确定性时态数据管理与查询方法与流程

本发明属于数据处理技术,具体涉及一种基于关系r树的不确定性时态数据管理与查询方法。



背景技术:

随着应用发展,数据的存储对象变得越来越复杂,不仅仅是一些确定的数据,还存在一些不确定的数据,比如在项目规划中,预计完成日期往往是松散定义的,例如“项目将在此后的三到六个月内完成”。把一些时态变量描述成不确定时态信息,这样产生的数据更接近人类认识的直觉性,也更加符合现实世界的情况。对于这些存在不确定性的时态数据,如何进行很好的管理是我们能不能高效的利用这些数据的至关重要的一部分。

对于不确定时态数据,由不确定开始点和结束点构成:表现形式如下:

<<x1,x2>,<y1,y2>>。

因此建立时态数据索引时,大多利用空间索引算法,将<x1,x2>,<y1,y2>映射成空间矩形的4个定点进行处理。目前最常用的是将r树技术与不确定时态索引结合。但由于这种空间方式表示有效时间会存在一个无效范围问题,查询时会对结果造成一定影响,并且只是管理了时间属性并未管理权值,因此我们提出了一种基于关系r树的不确定性时态数据管理与查询方法,在管理不确定时态数据的同时还管理了权值。



技术实现要素:

发明目的:为了管理不确定时态数据时消除无效区域的影响,本发明旨在提供一种基于关系r树的不确定性时态数据管理与查询方法。

技术方案:一种基于关系r树的不确定性时态数据管理与查询方法,所述方法首先基于确定的区间长度对起始点和终止点不确定的时态数据进行管理,然后构建关系r树,按照时态数据的权值大小顺序进行查询;包括如下步骤:

(1)生成不确定时态数据并建立关系r树:给定区间参数,生成原始的不确定时态数据区间,然后将这些数据区间根据时间属性和权值构建的矩形框建成一棵r树;

(2)关系r树的关系管理:遍历步骤(1)中构建的r树获取当前节点中按权值从大到小排序的条目索引的关系,并结合辅助结构存储;

(3)不确定时态数据top-k查询:由步骤(2)中得到的关系r树和要查询的值作为输入,从根点开始和每一个节点进行比较,当要访问当前节点的子节点,根据关系r树中存储的节点nodeid与权值大小的关系选择下一个访问目标。

进一步的,步骤(1)包括根据不确定间隔数据的区间范围和权值,以范围为x轴,权值为y轴,并对权值上下进行扩展,将不确定间隔数据构建成一个矩形框,然后根据得到的矩形框构建一棵r树。

更进一步的,对不确定间隔数据的权值进行上下扩展时是选取一个不会影响查询结果的极小值进行扩展计算。

进一步的,步骤(2)所述的辅助结构为b-tree和数组;

步骤(2)中根据遍历已构建的r树获取并管理一个当前节点与当前节点中的条目索引号的关系,以能够按当前节点中的条目的权值从大到小的顺序访问节点,关系中存储的是权值和索引号;当用b-tree来管理关系时,我们以遍历r树所得的关系表中的nodeid为关键字建树,根据当前r树节点的id号找到其在b-tree中的位置并获取当前节点对应的子节点的索引号和权值;当用数组来管理关系时,创建一个大小与r树节点数目相同的数组,以节点的nodeid为数组下标,关系中的tupleid为数组内容进行映射,映射的规则为将遍历r树时节点的nodeid与其访问顺序相对应。

进一步的,步骤(3)中访问r树中节点时按照不确定数据权值大的节点优先访问。

优选的,步骤(2)所述的辅助结构为b-tree和数组;步骤(2)中根据遍历已构建的r树获取并管理一个当前节点与当前节点中的条目索引号的关系,按当前节点中的条目的权值从大到小的顺序访问节点,其关系表示如下:

rel(tuple(int:tupleid,int:nodeid,list:entries)),list=<(w1,index1),……,wn,indexn)>;

其中b-tree的节点记为n(nodeid,l),l=<(w1,index1),……,(wn,indexn)>;

基于上述数组管理关系,创建一个大小与r树节点数目相同的数组,以节点的nodeid为数组下标,关系中的tupleid为数组内容进行映射,映射的规则是将遍历r树时节点的nodeid与其访问顺序相对应,表示如下:

r-array[nodeid]=tupleid。

步骤(3)中访问r树中节点时按照不确定数据权值大的节点优先访问。

本发明所述的基于关系r树的不确定性时态数据管理与查询方法是分别实现的,首先将不确定时态数据根据时间属性和权值构建成矩形框从而构建成一棵r树,再通过遍历这棵r树获取当前节点中按权值从大到小排序的条目索引的关系,并结合辅助结构(b-tree和数组)存储这个关系,这样在查询给定数据与不确定时态数据相交的时候就可以按权值从大到小访问节点。

有益效果:与现有技术相比,本发明所述的基于关系r树的不确定性时态数据管理与查询方法,除管理了数据的不确定性还管理了数据的权值属性,并且消除了无效区域;在做top-k查询时,对于当前访问的节点的子节点,可以按数据的权值从大到小访问,并且可以计算查询数据与当前数据相交的概率。

附图说明

图1为本发明所述不确定时态数据的数据表示形式;

图2为实施例不确定时态数据的二维表示形式;

图3为实施例两个间隔数据相交的三种情况;

图4为本发明所述关系r树的基本结构图;

图5为本发明所述关系r树需维护的关系图;

图6为实施例中利用b树维护关系图;

图7实施例中利用数组维护关系图。

具体实施方式

为了详细的说明本发明所公开的技术方案,下面结合说明书附图及具体实施例做进一步的阐述。

本发明所公开的是一种基于关系r树的不确定性时态数据管理与查询方法,用于实现在可扩充移动对象数据库secondo中不确定时态数据的管理。首先将不确定时态数据根据时间属性和权值构建成矩形框从而构建成一棵r树,再通过遍历这棵r树获取当前节点中按权值从大到小排序的条目索引的关系,并结合辅助结构(b-tree和数组)存储这个关系,这样在查询给定数据与不确定时态数据相交的时候就可以按权值从大到小访问节点。

(1)不确定时态数据生成和建树;

本发明考虑给定数据空间情况,为了实验及实际的需要,需提前生成不确定时态数据。我们用区间表示时态数据,区间是系统自动生成的,但需给定一些区间参数:

1)区间最小值和最大值,这个是为了限定区间值可控,在本发明中,我们规定的是区间最小值是1,最大值是100000;

2)区间长度和区间权值,长度是用来规定每一个区间的确切长度,本发明中规定区间长度为区间范围内的随机值;3)区间数量,本实验中规定的区间数量是2000000。以上值仅是为了实验需要,可以根据实验情况随时调整。然后根据生成的时态数据,建立一颗r树。

(2)关系r树的关系管理;

对于已经生成的r树,我们从根节点开始遍历并记录每个节点的nodeid以及它的entries的id和权值,这样在遍历完这棵树之后就会得到一个当前节点与当前节点中按权值从大到小排序的条目索引的关系。为了管理这个关系,我们提出了两种方法,一种是利用b树管理,我们以遍历r树所得的关系表中的nodeid为关键字建树;一种是结合数组管理,创建一个大小与r树节点数目相同的数组,以节点的nodeid为数组下标,关系中的tupleid为数组内容进行一一映射。

(3)不确定时态数据top-k查询;

对于已经给定的不确定时态数据,当任意给一个查询区间,查找与这个区间最可能相交的权值最大的k个区间。我们根据已经建好的关系r树进行查找,首先从根结点开始,判断是否与待查询区间相交,如果相交,继续访问其子节点,此时,不再按r树中节点索引顺序访问,而是通过关系表中存储的子节点按权值从大到小的顺序访问。

具体的,本发明所述的基于关系r树的不确定性时态数据管理与查询方法,在管理时间属性的同时还能管理权值,并且能够根据权值大小对查询结果的影响进行索引,因此我们在查询时需要获知节点间权值大小的关系,由此我们结合关系r树来管理一个节点的nodeid以及它的entries的id和权值之间的关系。主要步骤如下:

(1)不确定时态数据生成和建树;

本发明需要构造一系列符合要求的不确定时态数据,并将构造的时态数据保存到可扩充数据库系统secondo中,为了实验的方便,我们设定数据的一些基本参数,参数的种类及含义已经在之前进行了详细的介绍。

图1是生成的一系列不确定时态数据表示形式,矩形框的构建如图2所示,虚线代表不确定数据的可活动范围,y轴表示权值,我们将权值上下扩展一个极小的范围以将一维的线段扩展为二维的矩形框,然后再将这些矩形框构建为一棵r树,如图4所示。

(2)关系r树的关系管理;

对于已经生成的r树,我们从根节点开始遍历并记录每个节点的nodeid以及它的entries的id和权值,这样在遍历完这棵树之后就会得到一个当前节点与当前节点中按权值从大到小排序的条目索引的关系,如图5所示。为了管理这个关系,我们提出了两种方法,一种是利用b树管理,我们以遍历r树所得的关系表中的nodeid为关键字建树,可根据当前r树的节点的id号找到其在b-tree中的位置并获取当前节点对应的子节点的索引号和权值,如图6所示。一种是结合数组管理,创建一个大小与r树节点数目相同的数组,以节点的nodeid为数组下标,关系中的tupleid为数组内容进行映射,映射的规则是将遍历r树时节点的nodeid与其访问顺序相对应,如图7所示。

(3)不确定时态数据top-k查询;

利用关系r树的另一重要目的就是为了快速查询,找到与查询区间最可能相交的权值最大的k个区间。本发明提供了不确定时态数据的相交概率计算方法与权值优先的查找方法。两个间隔数据相交分为四种情况,如图3所示,这两个间隔数据相交的概率函数可记为:

其中(a,b)为查询间隔,(s,e)为不确定间隔,l为不确定数据范围,l为不确定数据长度。查询时我们从根结点开始访问,判断是否与待查询区间相交,如果相交,继续访问其子节点,此时,不再按r树中节点索引顺序访问,而是通过关系表中存储的子节点按权值从大到小的顺序访问。如图4中nodeid为x的节点,对于标准r树其子节点的访问顺序是e1,e2,我们基于关系r树,管理了节点索引号与权值大小的关系,此时可根据(2)中构建的b树或数组中存储的信息按权值从大到小的顺序访问节点,即e2,e1。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1