一种无线传感网络的可分解聚合查询处理方法

文档序号:7551697阅读:157来源:国知局
专利名称:一种无线传感网络的可分解聚合查询处理方法
技术领域
本发明属于计算机数据管理技术领域,具体涉及一种无线传感网络的可分解聚合查询处理方法。
背景技术
无线传感网络具有广阔的应用前景,除将采集到的所有原始数据周期性送回基站之外,响应用户的各种复杂数据查询也是无线传感网络的重要功能。在收集数据和响应查询的过程中,数据融合技术发挥了非常重要的作用,融合多节点数据所得出的结果能够克服单点感知数据易受噪声影响的缺点,有效控制误差,同时数据融合技术能够显著降低通讯开销,提高系统性能。将无线传感网络看作是一个数据库,聚合查询例如SUM (求和)、COUNT (计数)、AVG (均值)、MEDIAN (中位数)、MIN (最小值)和MAX (最大值)等是获取统计结果的重要查询,聚合查询能够克服单个感知数据的噪声影响,提高准确性并给出全局性的结果。如何高效处理无线传感网络中的各种聚合查询为数据融合技术提出来新的挑战。无线传感网络的计算以及带宽资源都极度有限,链路不稳定数据丢失频繁,因此需要设计新的机制能够在动态环境下克服数据丢失带来的影响,同时在保证数据查询结果准确率的前提下减少通信的开销。聚合查询包括很多具体类型,它们大致可以归为两类,可分解查询(或者叫做非全局查询)和不可分解查询(或全局查询)。可分解查询,包括SUM、COUNT、MIN、MAX和AVG等,都具有可分解的特性。假设数据集记为S,则对于任意查询Q,如果Q是可分解的,则存在一个函数f,使得对于所有的S=S1 U S2, Q(S) =f (Q(S1)1Q(S2))0如果不存在这样的函数f,则查询Q是不可分解的(全局的)。不可分解查询包括分位数查询(例如MEDIAN),柱状图查询等。本发明公开的技术主要针对可分解查询,查询的最终结果能够从部分结果直接组合计算得出,比如求和查询中只需把各个部分的数据求和即可获得最终的结果。这种计算特性使得可分解查询能够分布式计算并且很方便的进行网内聚合操作,但是高效准确的获得查询结果需要应对无线链路带来的数据包丢失问题和尽量减少传输开销。TAG技术中提出网内聚合方法,即中间节点将自己采集到的数据和所有子节点收到的数据进行融合,然后融合后的结果仅适用一个数据包内发送至其父节点,和传统方法相比,TAG大大减少了数据的发送数量。但是这种方法在数据包丢失的时候精度下降严重,例如一个数据包的丢失意味着以发送者为根的整个子树上的数据全部丢失。Silberstein等研究人员提出的技术充分利用了网络拓扑来解决最大最小值查询问题,在保证查询结果精度的前提下最小化通信开销。为了克服数据包丢失带来的影响,一个很有效的办法是让同一数据沿多条路由返回基站,这样极大提高了到达概率,但这种情况下的网内聚合存在重复数据的问题,尤其对于求和、平均值等重复敏感的查询。感知数据的不确定性和噪声干扰等问题,严重影响可分解查询的准确性。移动均值是一种广泛采用的统计方法,被用来消除不确定性和噪声的影响。特别的,当我们发现一些可疑的感知数据的时候(例如查询结果超过报警阈值),在采取其它措施之前,我们可以提高采样频率持续进行查询,并计算接下来一批查询结果的均值,来确认当前的感知数据是否真的超过了阈值。但是移动均值仍然不能保证数据的准确性,因为无线传感网络数据传输可靠性低,丢包严重。同时,由于无线传感网络的节点能量限制,传统查询处理技术消耗大量能量。

发明内容
本发明旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商业选择。为此,本发明的一个目的在于提出一种开销合理、准确性高的优点的无线传感网络的可分解聚合查询处理方法。根据本发明实施例的无线传感网络的可分解聚合查询处理方法,包括以下步骤S1.将多个无线传感器的节点构建成树状拓扑结构;S2.用户发出连续聚合查询,所述连续聚合查询通过所述树状拓扑结构被洪泛到所述传感器网络中;S3.采用多父节点方法并结合智能传输路径选择算法,计算每个所述节点的优选父节点,其中,计算得到的所述优选父节点的数目为多个;S4.数据通过所述树形拓扑结构传输,所述节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及
S5.传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果。在本发明的一个实施例中,所述步骤S3进一步包括S31.计算所有可能父节点到子节点直接父节点的距离,根据所述距离将所述可能父节点投影到一条直线上;以及S32.子节点在生成树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能父节点中均匀选出预定数量的优选父节点。在本发明的一个实施例中,还包括在所述节点内增加计数器,观察并计算链路的接收率和丢失率,并利用所述接受率和丢失率对所述节点传输的数据进行概率补偿。在本发明的一个实施例中,还包括在所述节点引入卡尔曼滤波器对观察到的链路丢失率进行修正,以使得到真实链路丢失率的最优估计。本发明公开了一种无线传感网络的可分解聚合查询处理方法,通过设计概率补偿模型(PCM)和智能路径选择机制来解决链路丢包对查询结果准确率的影响同时降低通讯开销。本发明的优点在于第一,本发明提出的技术能够持续获得可分解聚合查询结果。第二,本发明提出的技术通过概率补偿能够克服无线链路数据丢失带来的负面影响,显著提高查询结果准确性。第三,本发明提出的智能路径选择技术显著减少通讯开销,并且提高结果的稳定性。本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中图1是本发明的无线传感网络的可分解聚合查询处理方法的流程图2是本发明的网络拓扑构建示意图;图3是本发明的智能路径选择示意图。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底” “内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。如图1,本发明实施例的无线传感网络的可分解聚合查询处理方法包括以下步骤步骤S101.将多个无线传感器的节点构建成树状拓扑结构。树根是一个用户指定的传感器节点,该节点直接连接到服务器。树根节点广播拓扑创建信息和查询请求,并且整个路由树上所有无线传感器节点返回的数据都汇集到根节点。具体地,基本的拓扑构建方法如下根节点广播初始拓扑创建信息,该信息包含树根节点的ID和层号(根节点的层号为O)。收到此信息的任意中间节点缓存信息中的ID作为其父节点,并且将自己的层号设置为信息中的层号加I。然后,将信息中ID和层号替换为自己的ID和层号并广播出去。拓扑创建信息以这种方式洪泛到整个网络并在叶节点出停止。为了运行智能路径选择算法,本发明提出的技术对建立生成树的过程做如下改进。使用一个序列号来作为节点ID,拓扑创建信息包含两个部分,序列号和层号。子节点可以从创建信息中找出父节点的序列号,然后在这个序列号的末尾扩展一位数字。然后,子节点使用扩展后的序列号作为自己的序列号。该编号过程可以描述如下当一个中间节点收到父节点的创建信息时,它发送给父节点一个反馈,通过这种途径父节点了解到子节点的信息。然后父节点为每个自节点都分配一个唯一的整数从O开始到子节点的总数量并通知所有子节点这个设置。分配的过程可以按照子节点反馈的顺序或者它们的物理位置(如果可用)等。子节点将这个整数添加在收到创建信息中的序列号后面作为自己的序列号,并把包含自己新的序列号和加I后层号的信息再广播出去。按照这个过程,每个节点将会拥有个反映其在拓扑中逻辑位置的序列号。如图2所示,节点A分别设置它的三个子节点为O,I, 2。三个子节点将这个数字扩展到自己收到消息中的序列号(节点A的序列号)后面来得到自己的序列号,分别为〈020〉,〈021〉和〈022〉。事实上,序列号反映了节点到树根的路径。当至幡节点跳数增加的时候,序列号也会变得很长。但我们存储序列号的空间是有限的,因此我们采用将序列号截断并仅存储最后几位(临近节点往往共享祖先节点,因此最后几位可以区别它们)。这种情况下,序列号具有〈number, Lc>的形式,其中Lc (当前节点的层)表示该序列号最后的层号。步骤S102.用户发出连续聚合查询,连续聚合查询通过树状拓扑结构被洪泛到传感器网络中。网络拓扑建好后,用户发出一个连续聚合查询,例如AVG,即用户希望周期性了解无线传感器网络中所有节点采样的平均值。该查询通过树状拓扑被洪泛到网络中。在接下来的过程中,每个节点周期性对需要监测的参数进行采样并将数据送回基站。步骤S103.采用多父节点方法并结合智能传输路径选择算法,计算每个节点的优选父节点,其中,计算得到的优选父节点的数目为多个。无线传感器节点在每一个周期都采集到一个感知数据并将其发送给父节点(距离根节点更近),通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算。中间结点聚合多个子节点数据上传以节省通讯开销。传统TAG查询技术使用单一路径来进行传输,即每个节点将数据发给自己的一个父节点。而本发明提出的技术采用了多父节点的方法并结合智能路径选择算法,也就是子节点缓存多个上游节点作为可能的父节点同时向每个父节点都发送部分值。在密度较高的网络中,传感器节点的通讯范围内有很多可能的父节点。如果向所有的父节点都发送数据流量开销很大,另外向过多的父节点发送部分值也会导致严重的链路共享问题,使得运算结果的方差增大。步骤S104.数据通过树形拓扑结构传输,节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算。例如对于AVG查询,需要把COUNT和SUM值放到一个数据包中〈count, sum〉。如果子节点有多个父节点,智能路径选择算法将会选择其中一部分来发送数据。如果我们选择3个上游节点作为当前父节点,则部分值〈count/3, sum/3>将会被发送到每个父节点。步骤S105.传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果。具体地,感知数据包通过网络传输,传输过程中应用网内聚合,即中间节点将从所有子节点收到的数据聚合成单个结果,然后重新拆分为部分值转发给自己选择的那些父节点。最后,基站利用接收到的所有数据计算最终的查询结果。
本发明公开了一种无线传感网络的可分解聚合查询处理方法,通过设计概率补偿模型(PCM)和智能路径选择机制来解决链路丢包对查询结果准确率的影响同时降低通讯开销。本发明的优点在于:第一,本发明提出的技术能够持续获得可分解聚合查询结果。第二,本发明提出的技术通过概率补偿能够克服无线链路数据丢失带来的负面影响,显著提高查询结果准确性。第三,本发明提出的智能路径选择技术显著减少通讯开销,并且提高结果的稳定性。在本发明的一个实施例中,步骤S3进一步包括:S31.计算所有可能父节点到子节点直接父节点的距离,根据距离将可能父节点投影到一条直线上;以及S32.子节点在生成树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能父节点中均匀选出预定数量的优选父节点。具体地,可以分为以下两个阶段:第一阶段,计算所有可能父节点到子节点直接父节点(生成树创建时的父节点)的距离。这些距离反映了这些可能父节点的相对位置,根据它们的位置(在拓扑上从左至右)可以把这些可能父节点都投影到一条直线上。路径选择的目的是减少父节点数量和链路共享问题。因此本发明提出的技术尝试在逻辑拓扑上选择相互之间逻辑距离较远的父节点,减少共享链路带来的连续查询结果在数据丢失的环境下方差较大的缺点。如前所述,节点的逻辑位置可以由它们的序列号来确定,因此节点间的逻辑距离能够通过它们的序列号来计算。例如我们希望计算节点I (序列号〈NIL1-d+lNIL1-d+2...NILi, Li 和J (〈NJLj-d+lNJLj-d+2...NJLj, Lj>)之间的逻辑距离。令d代表序列号的长度,Li和Lj表示两个节点的层号,NI和NJ是两个序列(〈NIL1-d+lNIL1-d+2...NILi>和〈NJLj-d+lNJLj-d+2...NJLj>)。它们之间逻辑距离的定义如下:
max (Li—d+1lj—d+i)DISij =Σ(NIk — NJk) X S(max(li,lj)_k))
k=min (Li,Lj)其中DISij表示节点I到J的距离,S是父节点可有的子节点的最大子节点数。第二阶段,从候选中选择父节点。子节点在生成树上的直接父节点默认被选为父节点。然后从其他候选中均匀选出期望数量的父节点,使得他们之间的距离最大。在图3所示的实例中,节点C默认被选为父节点。接下来最左边的节点A和最右边的节点G (到C具有最大的绝对距离)被选为父节点。如果需要更多的父节点,继续划分A到C或者C到G的范围为几个等份同时将那些分界点附近的节点选为父节点。例如在选择了 C,A,G之后还需要一个父节点,C和G重点附近的节点E将被选中。一旦父节点选择完毕,它们将会缓存所有的子节点信息,并且接收在它们缓存列表中的子节点发来的数据包。在本发明的一个实施例中,还包括:在节点内增加计数器,观察并计算链路的接收率和丢失率,并利用接受率和丢失率对节点传输的数据进行概率补偿。具体地,由于无线链路的不稳定性,数据可能会丢失导致查询结果的偏差,本发明提出概率补偿技术来解决这一问题。首先需要对链路的数据丢失率进行估计。提出一种简单高效的动态链路丢失率(L)估计算法。链路丢失率依赖于发送方发出的包数和接收方收到的包数之差。父节点统计收到包数并通知其子节点。收到包数记为N,发送的总包数为M,因此链路丢失率为L=(l -N/M)其中N/M是接收率。因为接收方给发送方的反馈频率很低而且能够利用捎带的方式,因此这一方法带来的开销很小,仅是在节点内增加的计数器变量。因为最近时间段内观察到的单个链路丢失率(L)不够准确,本发明引入卡尔曼滤波器,利用观察到的链路丢失率来得到真实链路丢失率的最优估计。本发明提出通过链路估计得到每一条传输链路的数据丢失率,然后依据该数据丢失率对传输的数据进行概率补偿。子节点到当前几个父节点的平均链路丢失率,记作L,补偿后的部分值为〈count/c (1-L),sum/c(1-L)>。在本发明的一个实施例中,还包括在节点引入卡尔曼滤波器对观察到的链路丢失率进行修正,以使得到真实链路丢失率的最优估计。流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
权利要求
1.一种无线传感网络的可分解聚合查询处理方法,其特征在于,包括以下步骤: 51.将多个无线传感器的节点构建成树状拓扑结构; 52.用户发出连续聚合查询,所述连续聚合查询通过所述树状拓扑结构被洪泛到所述传感器网络中; 53.采用多父节点方法并结合智能传输路径选择算法,计算每个所述节点的优选父节点,其中,计算得到的所述优选父节点的数目为多个; 54.数据通过所述树形拓扑结构传输,所述节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及 55.传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果。
2.如权利要求1所述的无线传感网络的可分解聚合查询处理方法,其特征在于,所述步骤S3进一步包括: 531.计算所有可能父节点到子节点直接父节点的距离,根据所述距离将所述可能父节点投影到一条直线上;以及 532.子节点在生成树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能父节点中均匀选出预定数量的优选父节点。
3.如权利要求1所述的无线传感网络的可分解聚合查询处理方法,其特征在于,还包括:在所述节点内增加计数器,观察并计算链路的接收率和丢失率,并利用所述接受率和丢失率对所述节点传输的数据进行概率补偿。
4.如权利要求1所述的无线传感网络的可分解聚合查询处理方法,其特征在于,还包括:在所述节点引入卡尔曼滤波器对观察到的链路丢失率进行修正,以使得到真实链路丢失率的最优估计。
全文摘要
本发明提出一种无线传感网络的可分解聚合查询处理方法,包括将多个无线传感器的节点构建成树状拓扑结构;用户发出连续聚合查询;采用多父节点方法并结合智能传输路径选择算法,计算每个节点的优选父节点;数据通过树形拓扑结构传输,节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果。本发明能够克服无线链路数据丢失带来的负面影响,并且能够显著减少通讯开销,并且提高结果的稳定性。
文档编号H04W84/18GK103077251SQ20131003946
公开日2013年5月1日 申请日期2013年1月31日 优先权日2013年1月31日
发明者刘克彬, 刘云浩 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1