APP下载

WSN网内数据存储与检索技术分析

2018-01-19李鹏闵慧

软件导刊 2018年10期
关键词:数据存储无线传感器网络评价指标

李鹏 闵慧

摘要:在无线传感器网络中,基于单个基站的外部存储方法会带来通讯瓶颈和能量消耗不均衡问题,而部署多个基站又会增加网络部署成本。因此,研究适合无线传感器网络的网内数据存储与检索技术具有重要意义。概述了无线传感器网络网内数据存储与检索技术研究的必要性、存在的问题及其挑战,给出了数据存储与检索的评价指标,并对已有方案进行分类,指出了无线传感器网络网内数据存储与检索技术下一步的研究重点。

关键词:无线传感器网络;数据存储;检索技术;评价指标

DOIDOI:10.11907/rjdk.181397

中图分类号:TP301

文献标识码:A 文章编号:1672-7800(2018)010-0006-04

英文摘要Abstract:In wireless sensor network, the traditional method of storing and retrieving data at a single base station triggers the problem of communication bottleneck and unbalanced energy consumption. While Multiple base stations will increase the cost of network deployment. Therefore, in-network data storage and retrieval becomes a key problem in wireless sensor networks. In this paper, we firstly outline the necessity, problems and challenges. Furthermore, the evaluation metrics of the data storage and retrieval is proposed and the existing schemes are classified. Finally, we conclude this paper and point out the open research issues on in-network data storage and retrieval in wireless sensor network.

英文关键词Key Words:wireless sensor networks; data storage; retrieval technology; evaluation metrics

0 引言

无线传感器网络[1](Wireless Sensor Networks, WSN)是由大量具有无线通信、传感、数据处理能力的传感器节点通过自组织方式构成的网络,如图1所示。WSN借助节点内置形式多样的传感器,实时地感知和采集周边环境中的各种数据,并对这些数据进行处理以获得用户需要的信息,然后将这些信息发布给用户。WSN被认为是2l世纪最重要的技术之一,在国防、工农业、城市管理、生物医疗、环境监测、抢险救灾、防恐反恐、危险区域远程控制等许多重要领域都有应用价值。

数据存储和检索是WSN的一项关键技术。传统基于单个基站的外部数据存储方法存在通讯瓶颈和能量消耗不均衡问题,而部署多个基站又会增大网络的部署成本。由于传感器节点具有存储容量小、计算能力低、通讯范围小、能量有限等特点,传统网络的数据存储与检索方案不能应用到WSN中[2-3]。因此,需要综合考虑多方面因素并结合传感器节点特点对WSN的数据存储与检索技术展开深入研究。WSN中数据存储与检索是两种密不可分的技术,而一种数据存储方案必然和一种数据检索方案相对应,因此,本文将二者结合起来进行分析。

1 网内数据存储与检索研究意义

对于部署了基站的WSN,为使用户获得感兴趣的事件数据,传统的方法是进行数据收集[4],即将节点产生的所有感知数据收集到基站上供用户查询。这种方法虽然可使用户获得自己感兴趣的事件数据,但存在以下几个问题:①当网络中有大量数据产生并同时向基站传输时,基站周围会出现通讯瓶颈,导致丢包率增加;②基站周围的节点需要承担更多的数据传输任务,其能量消耗远大于网络中其它区域节点的能量消耗,容易过早死亡,缩短了网络的生命周期;③由于用户可能只对其中一部分数据感兴趣,不加选择地将所有感知数据发送到基站,会浪费传感器节点能量;④这种数据收集方法过分依赖基站,应用局限性较大,在一些恶劣环境中几乎无法应用。

如果将WSN看成是一个分布式感知数据库,节点产生的所有感知数据都在WSN内部存储,通过合理设计网内数据存储与检索机制,则上述问题基本可解决。首先,数据在网络内存储可避免或缓解基站周围节点的通讯瓶颈和节点负载不均衡问题;其次,在网络内只存储用户感兴趣的事件数据,大大减少了数据传输量,从而降低了节点的能量消耗;最后,数据在网络内存储可有效减轻节点对基站的依赖程度,用户可从WSN中的任一位置发起查询,WSN可将查询结果返回给用户。

为提高数据存取效率,需要针对WSN的特点设计高效的数据存取机制。WSN网内数据存储与检索研究应与具体的应用背景相结合,不同的應用背景可能需要不同的数据存储与检索策略,目前这方面的研究还处于初步阶段,还有许多问题需要解决。

2 网内数据存储与检索研究相关问题

WSN具有高度应用相关性,不同的应用背景所面临的挑战不同,需要解决的问题也不同。目前有关WSN网内数据存储与检索技术方面的研究主要集中在以下几个方面:

(1)针对具体查询类型的网内数据存储与查询处理技术。常见的数据查询类型有:基于事件类型的所有数据查询[5]、多数据类型汇聚查询[6]、时空数据查询(spatio-temporal data query)[7]、观察属性范围查询(range query)[8]、近似位置查询(approximate location query)[9]、多分辨率数据查询(multi-resolution data query)、历史数据查询(historical data query)、极值区域查询以及近似Skyline查询等。为提高数据检索效率,需要针对不同的查询类型设计不同的数据存储方案和查询处理算法。传感器节点资源有限、通讯范围小以及计算能力低等特点为解决这些问题带来了一定的挑战。

(2)数据分发与发现技术。WSN数据分发与发现研究的问题是,数据生产者(产生事件数据的节点)如何实时高效地将产生的事件数据提供给数据消费者(对这些事件数据感兴趣的用户),以及数据消费者如何从众多的传感器节点中高效地搜寻到自己感兴趣的事件数据。解决WSN数据分发与发现问题通常采用Push-Pull技术[10]。单纯的Push技术指数据生产者将产生的事件数据在网络内泛洪,数据消费者在本地即可获得自己感兴趣的事件数据;单纯的Pull技术指数据生产者将产生的事件数据在本地存储,数据消费者在网络内泛洪查询请求,当查询请求遇到感兴趣的事件数据时返回查询结果。单纯依靠Push技术或Pull技术解决WSN数据分发与发现问题显然是低效的。因此,需要探索如何将Push技术和Pull技术相结合,在保证一定的数据查询成功率条件下,提高数据分发与发现的效率。

(3)自适应数据存取[11]。自适应数据存取主要研究如何根据网络状态的动态变化自适应地选择数据存储节点的位置。数据生产者的数据产生速率和位置,数据消费者的查询请求产生速率和位置,以及网络拓扑结构等因素都会影响数据的最优存储位置。综合各种网络因素计算最优数据存储位置,尤其是计算多个最优数据存储位置,大多是NP问题,具有一定的挑战性。

(4)网络内数据编码与恢复。对于部署在某些恶劣环境中的WSN而言,可能无法通过网关与外界网络相连,用户无法经常对这些WSN进行访问。传感器节点的能量有限,随着时间的延长,部分节点可能会因为能量耗尽而死亡。为了从剩余节点中恢复网络产生的所有感知数据,研究人员提出了基于编码的网内数据存储与恢复方法[12]。这种方法需要解决的问题是,源节点如何高效地将所产生的感知数据发散到网络中其余节点上,节点如何对收到的感知数据进行编码以保证足够大的数据恢复概率,以及如何估计源节点个数等。

3 网内数据存储与检索评价标准

在不同应用背景下,WSN网内数据存储与检索方案[13-15]及算法的评价标准不尽相同。然而,有一些评价标准是大多数WSN网内数据存储与检索方案和算法共有的,这些共有的评价标准包括以下几点:

(1)数据存取总代价。数据存取总代价指数据存储以及数据检索过程中所消耗的总的数据传输代价。显然,数据存取总代价越小越有利于延长网络生命周期,但这并不是影响网络寿命的唯一因素。

(2)节点的负载均衡性。提高节点的负载均衡性,一方面能够避免某些节点过早死亡,从而延长网络的生命周期;另一方面,可以均衡利用传感器节点的存储空间,防止一部分节点存储空间富裕而另一部分节点因存储空间被全部利用而导致数据溢出的现象发生。

(3)数据存取延时。数据存取延时包含数据存储延时和数据检索延时。数据存储延时指数据生产者将所产生数据发送到对应数据存储节点所消耗的时间;数据检索延时指数据需求者从发出查询请求到获得查询结果需要等待的时间。在一些实时性要求很高的WSN中,数据存取延时是评价数据存储与检索机制性能优劣的重要标准。

(4)计算复杂度。由于传感器节点的计算能力较低,对计算复杂度要求很高的方案和算法不适用于WSN。

(5)传感器节点的存储空间利用效率。效率体现在单位存储空间所存储的信息量上。由于传感器节点的存储空间有限,而节点又在不断采集感知数据,这就需要提高节点存储空间的利用效率。

(6)数据查询成功率。即获得查询结果的查询请求个数占总查询请求个数的比例。好的数据存储与检索方案应能够保证较高的数据查询成功率。

(7)自适应性、健壮性和可扩展性。传感器节点的电池容量有限且一般不能更换,随着时间的推移,一些负载较重的节点过早死亡不可避免。同时,在某些环境下,外力的作用可能导致节点发生移动,这些因素都会导致网络拓扑发生变化并且可能导致数据丢失。另外,网络的规模也会随着新节点的加入或旧节点的死去而发生动态变化。因此,WSN网内数据存储与检索方案和算法应具有很好的自适应性、健壮性和可扩展性,以适应网络的动态变化。

尽管以上几种性能评价标准是大多数WSN网内数据存储与检索方案共有的,但在不同应用背景下,其重要程度也不尽相同。另外,在具體应用中还存在一些比较重要的性能评判标准,如在利用编码技术进行数据存储与检索的WSN应用中,编码数据包的成功解码率是一个重要的性能评价指标。

4 网内数据存储与检索分类

近年来,科研工作者根据不同的应用背景提出了多种WSN网内数据存储与检索方案的、算法[16-18],但目前尚无统一的分类方式。可根据数据的存储位置、所存储数据是否存在粒度差异、算法是否具有自适应性、是否采用编码技术以及网络是否存在层次结构等标准,对已有方案进行分类。

(1)根据是否具有自适应性,分为自适应数据存储与检索和非自适应数据存储与检索。自适应数据存储与检索策略能够根据网络的当前状况,如查询请求的产生位置和频率、事件数据的产生位置和速率等,动态调整数据存取策略,灵活性更强,但在数据存储与检索方式转化时需要增加额外开销。

(2)按照数据的存储位置,分为本地存储与检索、以数据为中心的存储与检索、以位置为中心的存储与检索以及其它数据存储与检索策略。采用本地存储方式进行数据存储时需要的数据传输开销为零,但在数据检索时需要广播查询请求。因此,本地存储方式适用于事件数据产生速率高、查询请求产生频率低的网络环境;以数据为中心的数据存储与检索,指数据的存储与检索只与数据内容有关,而与数据的存储位置无关的一种数据存储与检索策略,适用于事件数据产生速率以及查询请求产生频率都不太高的网络环境;以位置为中心的数据存储与检索策略的主要思想是,进行数据存储时,将事件数据存储在以产生事件数据的节点为中心的某一范围内的节点上,在该范围内的节点依据其到产生事件数据节点之间的距离以及事件强度等因素,独立决定是否保存该事件数据的备份。进行数据检索时,用户通常只查询距离自身位置比较近的节点。以位置为中心的数据存储与检索策略通常应用在实时性、可靠性要求很高且数据重要程度与用户自身位置密切相关的网络环境中,如道路安全警告等。另外,按照数据的存储位置进行分类时,还存在一些其它类型的数据存储与检索策略,如混合数据存储与检索。混合数据存储与检索策略将本地存储与以数据为中心的数据存储策略相结合,根据网络状态的变化自适应地进行存储策略的调整和转换,以提高数据存取效率。

(3)依据数据存储节点之间是否存在层次结构,分为平面式数据存储与检索和层次式数据存储与检索。平面式数据存储与检索策略不需要构建层次结构,相对比较简单,但一般不支持多分辨率数据查询;层次式数据存储与检索策略需要为数据存储节点构建层次结构,一般可支持包括多分辨率数据查询和多属性范围数据查询在内的多种查询类型,但需要额外的层次维护开销。

(4)依据数据存储位置是否确定,分为确定存储位置的数据存储与检索和非确定存储位置的数据存储与检索。前者需要事先确定数据存储节点的个数和位置,然后将这些信息发布给网络中的所有节点。数据生产者和数据消费者以确定的数据存储位置进行数据存储或检索;后者不需要事先确定数据存储节点的个数和位置,数据消费者往往通过某种数据发现机制在网络中寻找自己感兴趣的事件数据。一般而言,确定存储位置的数据存储与检索策略查询成功率较高,但综合各种网络因素并结合具体应用背景确定最优数据存储节点的个数和位置十分具有挑战性;非确定存储位置的数据存储与检索机制通常具有较好的负载均衡性效果,但数据存储开销往往较大。

(5)根据各数据存储节点的数据是否存在粒度差异以及查询请求对数据粒度的要求是否相同,分为单分辨率数据存储与检索和多分辨率数据存储与检索。前者节点中所存储数据的粗细程度相同,不存在粒度差异,不支持多分辨率数据查询;后者为了有效支持多分辨率数据查询,通常需要构造层次结构,在处于较低层次的节点上保存较精确的数据信息,而在处于较高层次的节点上保存粒度较粗的事件摘要信息。多分辨率数据存储与检索机制虽然能满足用户对不同粒度数据检索需要,但由于多分辨率数据存储机制需要不断地从新产生的感知数据中提取不同粒度数据,发送到高层数据存储节点,所以数据更新开销较大。

(6)按照是否采用编、解码技术进行数据存储与检索,分为基于编码的网内数据存储与检索和非编码的网内数据存储与检索。基于编码的网内数据存储与检索机制能够利用部分节点上的编码数据包恢复网络中所有源节点产生的源数据块,有效提高WSN的抗毁性,但该机制中源数据块的传输开销较大,适用于环境较恶劣、无法通过网关与外界网络相连接的WSN。

5 结语

尽管研究人员针对WSN网内数据存储与检索技术研究[19-20]做了大量工作,取得了一些初步的研究成果,但这些成果仍存在某些理论或实践上的缺陷,不能完全满足各种应用需求。因此,需要对WSN网内数据存储与检索技术进行深入研究。未来的研究重点包含以下几个方面:

(1)在降低总的数据存取代价的同时提高节点能量消耗的均衡性。目前许多WSN网内数据存储与检索方案和算法,要么以网络总的数据存取代价最小为目标,要么以提高节点负载均衡性为目标。实际上,好的WSN网内数据存储与检索策略,既需要降低总的数据存取代价,又需要平衡节点负载。

(2)提高存储空间利用效率,改善存储空间利用的不均衡状况。WSN中节点的存储空间有限,而节点所产生的感知数据会随着时间的推移而不断增加。因此,必须提高节点存储空间的利用效率,即以同样的存储空间存储尽可能多的数据信息。如何结合数据压缩技术解决这一问题是一个值得深入研究的方向。另外,还需要提高节点存储空间利用的均衡性。当节点的存储空间利用不均衡时,可能会出现某一部分节点有数据溢出,而另一部分节点却拥有较多的富裕存储空间现象。

(3)提高网内数据存储与检索方案的安全性。目前,对WSN网内数据存储与检索领域的安全问题人们关注度不高,之前对WSN安全性的研究工作主要集中在网络通讯的安全上,而在实际应用中,WSN很容易遭受诸如拜占庭、数据污染之类的攻击。因此,WSN数据存储与检索的安全问题同样重要,需要开展深入研究。

(4)提高对WSN网络动态变化的适应性。节点的死亡、移动、新节点的加入等因素常常会造成WSN的网络规模、节点密度、网络拓扑结构等发生变化,部分已有成果虽然也考虑了这些因素,但仍不完善,需要进一步研究更具动态适应性和可扩展性的WSN网内数据存储与检索方案。

(5)基于編码的WSN网内数据存储与检索方案和算法的改进。利用网络编码技术解决WSN网内数据存储与检索问题是较新颖的研究思路,目前研究成果不多,在数据传输代价以及成功解码率等方面都存在较大的改进空间。大多数基于编码的WSN网内数据存储与检索方案和算法都采用随机行走方式传播源数据块,由于随机性特点,源数据块的传播方向和传播路径都很难控制,因此每个源数据块对每个节点至少访问一次所需要的数据传输开销会很大。将基于虚拟坐标的数据传输机制引入到这类方案中,或许是降低数据传输代价的有效途径,这有待进一步研究和验证。

参考文献:

[1] 苘大鹏,王臣业,杨武,等.低能耗的无线传感器网络隐私数据融合方法[J].清华大学学报:自然科学版,2017,57(2):213-219.

[2] 朱虹,李爽,郑丽敏,等.生猪养殖场无线传感器网络路径损耗模型的建立与验证[J].农业工程学报,2017,33(2):205-212.

[3] 田野,袁博,李廷力.物联网海量异构数据存储与共享策略研究[J].电子学报,2016,44(2):247-257.

[4] WEN X, LIU Y, LIU S. Optimization design of network structure for WSN data collection design based on delay perception[J]. International Journal of Future Generation Communication and Networking, 2016, 9(8): 363-374.

[5] CUEVAS A, URUEA M, DE VECIANA G, et al. Dynamic data-centric storage for long-term storage in wireless sensor and actor networks[J]. Wireless networks, 2014, 20(1): 141-153.

[6] LIU B H, CHENG Y P, HSU S H. GPS-free information brokerage scheme in QUDG wireless sensor networks[J]. Journal of the Chinese Institute of Engineers, 2016, 39(2): 201-210.

[7] VILLAS L A, BOUKERCHE A, GUIDONI D L, et al. An energy-aware spatio-temporal correlation mechanism to perform efficient data collection in wireless sensor networks[J]. Computer Communications, 2013, 36(9): 1054-1066.

[8] CH V B, CHALASANI S. Privacy and integrity for range queries in event-driven multi dimensional data networks[J]. IJMCA, 2015, 3(5): 316-318.

[9] ZHAN C, XIAO F. Coding-based storage design for continuous data collection in wireless sensor networks[J]. Journal of Communications and Networks, 2016, 18(3): 493-501.

[10] CAN Z, DEMIRBAS M. A survey on in-network querying and tracking services for wireless sensor networks[J]. Ad Hoc Networks, 2013, 11(1): 596-610.

[11] GONG B, CHENG P, CHEN Z, et al. Spatiotemporal compressive network coding for energy-efficient distributed data storage in wireless sensor networks[J]. IEEE Communications Letters, 2015, 19(5): 803-806.

[12] GUO S, HE L, GU Y, et al. Opportunistic flooding in low-duty-cycle wireless sensor networks with unreliable links[J]. IEEE Transactions on Computers, 2014, 63(11): 2787-2802.

[13] 彭凱,林志峰,陈凯.基于骨架提取的WSN信息存储和检索算法[J].华中科技大学学报:自然科学版,2016(1):103-106.

[14] 屈应照,胡晓辉,宗永胜,等.WSN中一种基于数据融合的MobileAgent路径规划方法[J].传感技术学报,2016,29(7):1032-1041.

[15] 吴振铨,梁宇辉,康嘉文,等.基于联盟区块链的智能电网数据安全存储与共享系统[J].计算机应用,2017,37(10):2742-2747.

[16] 高志君,郑纯军.基于空间索引的WSN数据查询机制[J].计算机工程与设计,2013,34(3):795-798.

[17] 尚庆生,郭建文.一种基于消息队列的WSN观测数据自动入库方法[J].自动化与仪器仪表,2015(8):141-143.

[18] 谢成阳,牛玉刚,陈蓓.一种基于自适应代表节点选择的WSN数据收集方法[J].传感技术学报,2017,30(8):1232-1239.

[19] 闵林,樊卫北,郭拯危,等.基于RCFile的无线传感器网络数据存储策略研究[J].计算机科学,2015,42(4):76-80.

[20] 曾超,邓蕾,张又进,等.机械振动无线传感器网络数据分块大小研究[J].仪器仪表学报,2016,37(7):1556-1563.

(责任编辑:杜能钢)

猜你喜欢

数据存储无线传感器网络评价指标
基于UML的高校思想政治教育工作评价系统的分析与研究
无线传感器网络技术综述