著录项信息
专利名称 | 一种无线传感网络的可分解聚合查询处理方法 |
申请号 | CN201310039462.X | 申请日期 | 2013-01-31 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2013-05-01 | 公开/公告号 | CN103077251A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/30 | IPC分类号 | G;0;6;F;1;7;/;3;0;;;H;0;4;W;8;4;/;1;8查看分类表>
|
申请人 | 清华大学 | 申请人地址 | 北京市海淀区-82信箱
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 清华大学 | 当前权利人 | 清华大学 |
发明人 | 刘克彬;刘云浩 |
代理机构 | 北京清亦华知识产权代理事务所(普通合伙) | 代理人 | 张大威 |
摘要
本发明提出一种无线传感网络的可分解聚合查询处理方法,包括:将多个无线传感器的节点构建成树状拓扑结构;用户发出连续聚合查询;采用多父节点方法并结合智能传输路径选择算法,计算每个节点的优选父节点;数据通过树形拓扑结构传输,节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果。本发明能够克服无线链路数据丢失带来的负面影响,并且能够显著减少通讯开销,并且提高结果的稳定性。
1.一种无线传感网络的可分解聚合查询处理方法,其特征在于,包括以下步骤:
S1.将多个无线传感器的节点构建成树状拓扑结构;
S2.用户发出连续聚合查询,所述连续聚合查询通过所述树状拓扑结构被洪泛到传感器网络中;
S3.采用多父节点方法并结合智能传输路径选择算法,计算多个无线传感器节点的每个节点的优选父节点,其中,计算得到的所述优选父节点的数目为多个,进一步包括:
S31.计算所有可能父节点到子节点直接父节点的距离,根据所述距离将所述可能父节点投影到一条直线上;
S32.子节点在生成树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能父节点中均匀选出预定数量的优选父节点;
S4.数据通过所述树状拓扑结构传输,所述节点在每一个周期采集一次对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及S5.传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终的查询结果,其中,在所述节点内增加计数器,观察并计算链路的接收率和丢失率,并利用所述接收率和丢失率对所述节点传输的数据进行概率补偿,在所述节点引入卡尔曼滤波器对观察到的链路丢失率进行修正,以使得到真实链路丢失率的最优估计。
一种无线传感网络的可分解聚合查询处理方法\n技术领域\n[0001] 本发明属于计算机数据管理技术领域,具体涉及一种无线传感网络的可分解聚合\n查询处理方法。\n背景技术\n[0002] 无线传感网络具有广阔的应用前景,除将采集到的所有原始数据周期性送回基站\n之外,响应用户的各种复杂数据查询也是无线传感网络的重要功能。在收集数据和响应查\n询的过程中,数据融合技术发挥了非常重要的作用,融合多节点数据所得出的结果能够克\n服单点感知数据易受噪声影响的缺点,有效控制误差,同时数据融合技术能够显著降低通\n讯开销,提高系统性能。将无线传感网络看作是一个数据库,聚合查询例如SUM(求和)、\nCOUNT(计数)、AVG(均值)、MEDIAN(中位数)、MIN(最小值)和MAX(最大值)等是获取统计结果的重要查询,聚合查询能够克服单个感知数据的噪声影响,提高准确性并给出全局性的结\n果。如何高效处理无线传感网络中的各种聚合查询为数据融合技术提出来新的挑战。无线\n传感网络的计算以及带宽资源都极度有限,链路不稳定数据丢失频繁,因此需要设计新的\n机制能够在动态环境下克服数据丢失带来的影响,同时在保证数据查询结果准确率的前提\n下减少通信的开销。\n[0003] 聚合查询包括很多具体类型,它们大致可以归为两类,可分解查询(或者叫做非全\n局查询)和不可分解查询(或全局查询)。可分解查询,包括SUM、COUNT、MIN、MAX和AVG等,都\n具有可分解的特性。假设数据集记为S,则对于任意查询Q,如果Q是可分解的,则存在一个函\n数f,使得对于所有的S=S1∪S2,Q(S)=f(Q(S1),Q(S2))。如果不存在这样的函数f,则查询Q是\n不可分解的(全局的)。不可分解查询包括分位数查询(例如MEDIAN),柱状图查询等。本发明\n公开的技术主要针对可分解查询,查询的最终结果能够从部分结果直接组合计算得出,比\n如求和查询中只需把各个部分的数据求和即可获得最终的结果。这种计算特性使得可分解\n查询能够分布式计算并且很方便的进行网内聚合操作,但是高效准确的获得查询结果需要\n应对无线链路带来的数据包丢失问题和尽量减少传输开销。\n[0004] TAG技术中提出网内聚合方法,即中间节点将自己采集到的数据和所有子节点收\n到的数据进行融合,然后融合后的结果仅适用一个数据包内发送至其父节点,和传统方法\n相比,TAG大大减少了数据的发送数量。但是这种方法在数据包丢失的时候精度下降严重,\n例如一个数据包的丢失意味着以发送者为根的整个子树上的数据全部丢失。Silberstein\n等研究人员提出的技术充分利用了网络拓扑来解决最大最小值查询问题,在保证查询结果\n精度的前提下最小化通信开销。为了克服数据包丢失带来的影响,一个很有效的办法是让\n同一数据沿多条路由返回基站,这样极大提高了到达概率,但这种情况下的网内聚合存在\n重复数据的问题,尤其对于求和、平均值等重复敏感的查询。\n[0005] 感知数据的不确定性和噪声干扰等问题,严重影响可分解查询的准确性。移动均\n值是一种广泛采用的统计方法,被用来消除不确定性和噪声的影响。特别的,当我们发现一\n些可疑的感知数据的时候(例如查询结果超过报警阈值),在采取其它措施之前,我们可以\n提高采样频率持续进行查询,并计算接下来一批查询结果的均值,来确认当前的感知数据\n是否真的超过了阈值。但是移动均值仍然不能保证数据的准确性,因为无线传感网络数据\n传输可靠性低,丢包严重。同时,由于无线传感网络的节点能量限制,传统查询处理技术消\n耗大量能量。\n发明内容\n[0006] 本发明旨在至少在一定程度上解决上述技术问题之一或至少提供一种有用的商\n业选择。为此,本发明的一个目的在于提出一种开销合理、准确性高的优点的无线传感网络\n的可分解聚合查询处理方法。\n[0007] 根据本发明实施例的无线传感网络的可分解聚合查询处理方法,包括以下步骤:\nS1.将多个无线传感器的节点构建成树状拓扑结构;S2.用户发出连续聚合查询,所述连续\n聚合查询通过所述树状拓扑结构被洪泛到所述传感器网络中;S3.采用多父节点方法并结\n合智能传输路径选择算法,计算每个所述节点的优选父节点,其中,计算得到的所述优选父\n节点的数目为多个;S4.数据通过所述树形拓扑结构传输,所述节点在每一个周期采集一次\n对应的多个子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个\n优选父节点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算;以及S5.\n传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到的所有数据计算最终\n的查询结果。\n[0008] 在本发明的一个实施例中,所述步骤S3进一步包括:S31.计算所有可能父节点到\n子节点直接父节点的距离,根据所述距离将所述可能父节点投影到一条直线上;以及S32.\n子节点在生成树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能\n父节点中均匀选出预定数量的优选父节点。\n[0009] 在本发明的一个实施例中,还包括:在所述节点内增加计数器,观察并计算链路的\n接收率和丢失率,并利用所述接受率和丢失率对所述节点传输的数据进行概率补偿。\n[0010] 在本发明的一个实施例中,还包括:在所述节点引入卡尔曼滤波器对观察到的链\n路丢失率进行修正,以使得到真实链路丢失率的最优估计。\n[0011] 本发明公开了一种无线传感网络的可分解聚合查询处理方法,通过设计概率补偿\n模型(PCM)和智能路径选择机制来解决链路丢包对查询结果准确率的影响同时降低通讯开\n销。本发明的优点在于:第一,本发明提出的技术能够持续获得可分解聚合查询结果。第二,\n本发明提出的技术通过概率补偿能够克服无线链路数据丢失带来的负面影响,显著提高查\n询结果准确性。第三,本发明提出的智能路径选择技术显著减少通讯开销,并且提高结果的\n稳定性。\n[0012] 本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变\n得明显,或通过本发明的实践了解到。\n附图说明\n[0013] 本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得\n明显和容易理解,其中:\n[0014] 图1是本发明的无线传感网络的可分解聚合查询处理方法的流程图;\n[0015] 图2是本发明的网络拓扑构建示意图;\n[0016] 图3是本发明的智能路径选择示意图。\n具体实施方式\n[0017] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终\n相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附\n图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。\n[0018] 在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于\n描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特\n定的方位构造和操作,因此不能理解为对本发明的限制。\n[0019] 此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性\n或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者\n隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,\n除非另有明确具体的限定。\n[0020] 在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机\n械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元\n件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发\n明中的具体含义。\n[0021] 在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”\n可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它\n们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特\n征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在\n第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示\n第一特征水平高度小于第二特征。\n[0022] 如图1,本发明实施例的无线传感网络的可分解聚合查询处理方法包括以下步骤:\n[0023] 步骤S101.将多个无线传感器的节点构建成树状拓扑结构。\n[0024] 树根是一个用户指定的传感器节点,该节点直接连接到服务器。树根节点广播拓\n扑创建信息和查询请求,并且整个路由树上所有无线传感器节点返回的数据都汇集到根节\n点。具体地,基本的拓扑构建方法如下:根节点广播初始拓扑创建信息,该信息包含树根节\n点的ID和层号(根节点的层号为0)。收到此信息的任意中间节点缓存信息中的ID作为其父\n节点,并且将自己的层号设置为信息中的层号加1。然后,将信息中ID和层号替换为自己的\nID和层号并广播出去。拓扑创建信息以这种方式洪泛到整个网络并在叶节点出停止。为了\n运行智能路径选择算法,本发明提出的技术对建立生成树的过程做如下改进。使用一个序\n列号来作为节点ID,拓扑创建信息包含两个部分,序列号和层号。子节点可以从创建信息中\n找出父节点的序列号,然后在这个序列号的末尾扩展一位数字。然后,子节点使用扩展后的\n序列号作为自己的序列号。该编号过程可以描述如下:当一个中间节点收到父节点的创建\n信息时,它发送给父节点一个反馈,通过这种途径父节点了解到子节点的信息。然后父节点\n为每个自节点都分配一个唯一的整数从0开始到子节点的总数量并通知所有子节点这个设\n置。分配的过程可以按照子节点反馈的顺序或者它们的物理位置(如果可用)等。子节点将\n这个整数添加在收到创建信息中的序列号后面作为自己的序列号,并把包含自己新的序列\n号和加1后层号的信息再广播出去。按照这个过程,每个节点将会拥有个反映其在拓扑中逻\n辑位置的序列号。如图2所示,节点A分别设置它的三个子节点为0,1,2。三个子节点将这个\n数字扩展到自己收到消息中的序列号(节点A的序列号)后面来得到自己的序列号,分别为<\n020>,<021>和<022>。事实上,序列号反映了节点到树根的路径。当到根节点跳数增加的时\n候,序列号也会变得很长。但我们存储序列号的空间是有限的,因此我们采用将序列号截断\n并仅存储最后几位(临近节点往往共享祖先节点,因此最后几位可以区别它们)。这种情况\n下,序列号具有的形式,其中Lc(当前节点的层)表示该序列号最后的层号。\n[0025] 步骤S102.用户发出连续聚合查询,连续聚合查询通过树状拓扑结构被洪泛到传\n感器网络中。\n[0026] 网络拓扑建好后,用户发出一个连续聚合查询,例如AVG,即用户希望周期性了解\n无线传感器网络中所有节点采样的平均值。该查询通过树状拓扑被洪泛到网络中。在接下\n来的过程中,每个节点周期性对需要监测的参数进行采样并将数据送回基站。\n[0027] 步骤S103.采用多父节点方法并结合智能传输路径选择算法,计算每个节点的优\n选父节点,其中,计算得到的优选父节点的数目为多个。\n[0028] 无线传感器节点在每一个周期都采集到一个感知数据并将其发送给父节点(距离\n根节点更近),通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算。中间结\n点聚合多个子节点数据上传以节省通讯开销。传统TAG查询技术使用单一路径来进行传输,\n即每个节点将数据发给自己的一个父节点。而本发明提出的技术采用了多父节点的方法并\n结合智能路径选择算法,也就是子节点缓存多个上游节点作为可能的父节点同时向每个父\n节点都发送部分值。在密度较高的网络中,传感器节点的通讯范围内有很多可能的父节点。\n如果向所有的父节点都发送数据流量开销很大,另外向过多的父节点发送部分值也会导致\n严重的链路共享问题,使得运算结果的方差增大。\n[0029] 步骤S104.数据通过树形拓扑结构传输,节点在每一个周期采集一次对应的多个\n子节点的数据并聚合成单个结果,然后重新切分为部分值后发送给对应的多个优选父节\n点,通过多跳传递数据到达根节点连接的服务器进行汇总查询结果计算。\n[0030] 例如对于AVG查询,需要把COUNT和SUM值放到一个数据包中。如果子\n节点有多个父节点,智能路径选择算法将会选择其中一部分来发送数据。如果我们选择3个\n上游节点作为当前父节点,则部分值将会被发送到每个父节点。\n[0031] 步骤S105.传输过程中应用网内聚合直至根节点处,最终基站利用根节点接收到\n的所有数据计算最终的查询结果。\n[0032] 具体地,感知数据包通过网络传输,传输过程中应用网内聚合,即中间节点将从所\n有子节点收到的数据聚合成单个结果,然后重新拆分为部分值转发给自己选择的那些父节\n点。最后,基站利用接收到的所有数据计算最终的查询结果。\n[0033] 本发明公开了一种无线传感网络的可分解聚合查询处理方法,通过设计概率补偿\n模型(PCM)和智能路径选择机制来解决链路丢包对查询结果准确率的影响同时降低通讯开\n销。本发明的优点在于:第一,本发明提出的技术能够持续获得可分解聚合查询结果。第二,\n本发明提出的技术通过概率补偿能够克服无线链路数据丢失带来的负面影响,显著提高查\n询结果准确性。第三,本发明提出的智能路径选择技术显著减少通讯开销,并且提高结果的\n稳定性。\n[0034] 在本发明的一个实施例中,步骤S3进一步包括:S31.计算所有可能父节点到子节\n点直接父节点的距离,根据距离将可能父节点投影到一条直线上;以及S32.子节点在生成\n树上的直接父节点默认被选为第一个优选父节点,然后从子节点的其他可能父节点中均匀\n选出预定数量的优选父节点。具体地,可以分为以下两个阶段:\n[0035] 第一阶段,计算所有可能父节点到子节点直接父节点(生成树创建时的父节点)的\n距离。这些距离反映了这些可能父节点的相对位置,根据它们的位置(在拓扑上从左至右)\n可以把这些可能父节点都投影到一条直线上。路径选择的目的是减少父节点数量和链路共\n享问题。因此本发明提出的技术尝试在逻辑拓扑上选择相互之间逻辑距离较远的父节点,\n减少共享链路带来的连续查询结果在数据丢失的环境下方差较大的缺点。如前所述,节点\n的逻辑位置可以由它们的序列号来确定,因此节点间的逻辑距离能够通过它们的序列号来\n计算。例如我们希望计算节点I(序列号)和J()之间的逻辑距离。令d代表序列号的长度,Li和Lj表示两个节点的\n层号,NI和NJ是两个序列(和)。\n它们之间逻辑距离的定义如下:\n[0036]\n[0037] 其中DISij表示节点I到J的距离,S是父节点可有的子节点的最大子节点数。\n[0038] 第二阶段,从候选中选择父节点。子节点在生成树上的直接父节点默认被选为父\n节点。然后从其他候选中均匀选出期望数量的父节点,使得他们之间的距离最大。在图3所\n示的实例中,节点C默认被选为父节点。接下来最左边的节点A和最右边的节点G(到C具有最\n大的绝对距离)被选为父节点。如果需要更多的父节点,继续划分A到C或者C到G的范围为几\n个等份同时将那些分界点附近的节点选为父节点。例如在选择了C,A,G之后还需要一个父\n节点,C和G重点附近的节点E将被选中。一旦父节点选择完毕,它们将会缓存所有的子节点\n信息,并且接收在它们缓存列表中的子节点发来的数据包。\n[0039] 在本发明的一个实施例中,还包括:在节点内增加计数器,观察并计算链路的接收\n率和丢失率,并利用接受率和丢失率对节点传输的数据进行概率补偿。\n[0040] 具体地,由于无线链路的不稳定性,数据可能会丢失导致查询结果的偏差,本发明\n提出概率补偿技术来解决这一问题。首先需要对链路的数据丢失率进行估计。提出一种简\n单高效的动态链路丢失率(L)估计算法。链路丢失率依赖于发送方发出的包数和接收方收\n到的包数之差。父节点统计收到包数并通知其子节点。收到包数记为N,发送的总包数为M,\n因此链路丢失率为L=(1–N/M)其中N/M是接收率。因为接收方给发送方的反馈频率很低而且\n能够利用捎带的方式,因此这一方法带来的开销很小,仅是在节点内增加的计数器变量。因\n为最近时间段内观察到的单个链路丢失率(L)不够准确,本发明引入卡尔曼滤波器,利用观\n察到的链路丢失率来得到真实链路丢失率的最优估计。本发明提出通过链路估计得到每一\n条传输链路的数据丢失率,然后依据该数据丢失率对传输的数据进行概率补偿。子节点到\n当前几个父节点的平均链路丢失率,记作L,补偿后的部分值为。\n[0041] 在本发明的一个实施例中,还包括:在节点引入卡尔曼滤波器对观察到的链路丢\n失率进行修正,以使得到真实链路丢失率的最优估计。\n[0042] 流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括\n一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部\n分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺\n序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明\n的实施例所属技术领域的技术人员所理解。\n[0043] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示\n例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特\n点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不\n一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何\n的一个或多个实施例或示例中以合适的方式结合。\n[0044] 尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例\n性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨\n的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
法律信息
- 2016-11-30
- 2013-06-05
实质审查的生效
IPC(主分类): G06F 17/30
专利申请号: 201310039462.X
申请日: 2013.01.31
- 2013-05-01
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-08-08
|
2007-02-02
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |