()物联网中通常需要存储长时间的历史与当3
以满足溯源处理和统计分析的需要,而前采样数据,
传感器和S难以ink结点的存储能力是相对有限的,满足长时间采样数据存储的要求.
鉴于分布式存储方式的上述局限,近年来越来在集越多的研究转向了集中式的传感器数据管理.中式数据管理系统中,各传感器按照一定的采样规将所采集的数据上传到数据中心进行统一的存则,
储管理,使得查询处理可以直接在数据中心完成,而不需要给传感器或Sink结点带来额外的计算与通由于数据中心具有相对强大得多的存储与信开销.
计算能力,因此这种方式可以支持各种复杂的、密集更加适合于物联网的相关应用环境.型的查询,
在集中式的传感器数据处理方面,最直接的方
]1316-
法是采用云数据管理及其相关技术[云计算是.
最近几年新兴的一个技术领域,其核心特点是通过动态管理几万台、几十万台甚至上百一种协同机制,
并按需分配万台计算机资源所具有的总处理能力,
给全球用户,使它们可以在此之上构建稳定而快速的存储以及其它I因此为物联网海量数据T服务,处理提供了一种可能.然而,目前绝大多数的云数
[7]
、据管理系统属于“键-值”数据库,如Bitable1g
[8][9][0][1]
、、、等(少Dnamo1HBase1PNUTS2HIVE2y
2 相关工作
在传感器采样数据的存储与查询处理方面,传统的方法主要是分布式的存储方法.分布式存储方
]810-
是指将采样数据直接存储在各传感器结点,法[
量的云数据库系统采用下面将讨论的并行数据库技
[2]
“术,如S等)键-值”数据库能够高效QLAzure2.
但不能有效地支持物地处理基于主关键字的查询,
联网数据的时空关系表示与存储、时空逻辑条件查询以及属性约束条件查询等.
另一种集中式的传感器数据管理方法是采用并
]2325-
行数据库技术[并行数据库通过将多个关系数.
或者存放在S查询处理时再通过远程访问ink节点,获取数据.如果查询涉及到不同的传感器网络,则需要通过中间件来进行模型转换,进而实现异构传感
]1112-
器网络之间的互操作[上述方法的好处是:由于.
传感器数据直接存储在本地或就近的S因ink结点,此避免了数据存储时的传输通信开销.但是,上述方式并不适合于以密集复杂查询和异构数据集成为特征的大规模物联网环境,原因如下:
()物联网系统中通常涉及密集型的复杂查询1处理,如时空约束条件查询、群体数据查询、统计分
据库组织成数据库集群来支持海量结构化数据的处理,但这种方法在处理关键字查询时的性能要远低于“键-值”数据库,无法根据传感器的标识快速地检索到所需要的数据.此外,由于采用了严格的分布式事务处理机制(如两阶段提交协议、数据加锁协议,等)在传感器采样数据频繁上传和更新的情况下,
1178
计 算 机 学 报2012年
数据处理的效率十分低下.最后,传统的并行数据库技术主要针对通用的数据类型,尚不能有效地支持物联网中传感器时空相关数据的并行存储与查询处理.
]文献[讨论了传感器数据中心(的数据26SDC)复制与负载均衡问题.作者虽然对集中式传感器数据中心的最终目标进行了描述,但是目前的研究还所给出的S比较初步.DC框架是直接建立在计算机集群上的,而不是通过数据库集群的方式,因此没有全局索引、全解决传感器异构时空数据的表示模型、局查询机制等关键技术问题.
在异构传感器采样数据的统一表示方法方面,最直接的思路是采用空间数据库及时空数据库的有
]2728-
,关方法[解决传感器数据的异构性和时空相关
的时空数据库集群方面的研究尚处于空白.
从数据流处理的角度来看,虽然物联网传感器采样数据表现出动态上传的流式特性,但是其处理目前的绝方法与流数据管理技术有着根本的不同:
[9][0]
、、大多数流数据库,如TelerahCQ2Giascoe3gpgp[1][32]
、等,主要解决如何在数据流SstemS3NetFli -y
实时地解析出查询结果(通常针对相到来的过程中,
对简单的查询,如查找某个特定的数据项或序列模,数据库内并不存储长时间的历史数据;而物式等)
并在此基础上联网中需要保存长时间的历史数据,实现复杂和灵活得多的查询处理.
综合以上分析可以看出,针对物联网中传感器采样数据管理所面临的海量性、异构性、时空相关性目前尚没有成熟的解决方及动态流式特性等挑战,
案,需要有针对性地进行专门的研究.
但是,传感器采样数据除了时空属性之外,性问题.
还包含物理对象的种种其它属性(如温度、压力、交,速度等)如何对这些异构的物理属性进通流密度、
行统一的表示是目前尚未解决的问题.此外,空间数而时空数据库虽然据库主要面向静态的空间对象,
,如时空轨迹数据)但目可以处理动态上传的数据(
前的研究主要针对单个时空数据库结点,在大规模
3 IoTClusterDB的系统结构-
在本节,我们描述IoT-ClusterDB的体系结构()见图1与工作机理
.
图1 IoT-ClusterDB的体系结构
IoT-ClusterDB是由多个传感器时空 如图1所示,
数据库结点(IoTSensorSatialemoralDataBase -T pp,所组成的一个数据库集群.在NodeIoT-NodeDB)
并不是原封不动地存放所有的IoT-ClusterDB中,传感器采样数据,而是只存放数值型的关键采样数据.为此,系统需要通过传感器接入处理器对数据进此外,原始的传感器采样数据也保存在各行预处理.
个传感器接入处理器中,以满足溯源处理的要求.
从层次划分的角度来看,传感器接入处理器位因此对各种传感器网络本身于传感器网络层之上,
的数据采集、通信模式没有特殊要求,从而增加了整个系统的灵活性和可扩充性.
3.1 传感器的接入与预处理