传感器网络数据管理讲义
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4 1 5 2 2 1 2 3
1 3 4 5
2 3 4
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch #
数据中心存储方法
地理散列函数
地理散列方法把数据的关键字被一个散列函数随机 地映射为一个地理位置,即地理坐标(x,y)(注意:这 种映射可以是一对多的).
地理路由协议GPSR(greedy perimeter stateless routing) 地理散列方法和GPSR的结合 增强地理散列方法的鲁棒性 地理散列方法的结构复制
传感器网络数据管理
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
传感器网络数据管理介绍
传感器网络数据管理的目的
把传感器网络上数据的逻辑视图(命名,存 取和操作)和网络的物理实现分离开来,使 得传感器网络的用户和应用程序只需要关心 所要提出的查询的逻辑结构,而无需关心传 感器的细节.
传感器网络数据查询处理方法
集中式查询处理 分布式查询处理
集中与分布式查询处理方法
集中查询处理适应于:
获取数据存储于中心数据库;在中心数 据库上对查询进行处理 传感器能源充足,而且数据采集周期长 的应用环境 例如: A计划
数据库 AVG平均
D
D A计划
D
分布式优点:
在网络内对数据进行聚集操作 减少数据传送 降低节点和网络地能量消耗 提高查询响应地实时性 例如:B计划
查询处理技术
传感器网络数据查询类型
历史查询:对从传感器获得的历史数据的查询.
"列出1999年A区域的平均降水量"
快照查询:对传感器网络在某一给定时间点的查询.
"列出所有传感器当前的温度值"
连续查询:关注某一段时间内传感器网络数据的变化 情况
"列出从现在开始24小时内,A区域每30分钟内的最高温度"
流水线聚集技术
在传感器网络内进行聚集计算时,由 于通讯失败,节点移动等原因,很难 保证结果完全正确. 流水线聚集技术把时间分为多个长度 为i秒的时间段.在每个时间段内,收 i 到聚集请求的每个节点都将前一个时 间段收到的子节点的数据与本地感知 数据作聚集,并将得到的部分聚集结 果向上传送.
能够使未收到聚集请求的节点参与聚集 运算. 每隔i秒都收到一个新的聚集结果.
数据模型
数据模型
现有的研究主要是对传统的关系模型,对象关系模 型或时间序列模型的有限扩展. 将感知数据视为分布在多个节点上的关系,将传感 器网络看成是一个分布式数据库 采用时间序列和概率模型表示感知数据的时间特性 和不确定性
数据模型
研究实例(一)
TinyDB系统的数据模型是对传统的关系模型的简单扩 展.它把传感器网络数据定义为一个单一的,无限长 的虚拟关系. 该表具有两类属性:
感知数据属性:温度值,电压值 描述感知数据的属性:感知数据的获得时间,传感器节点ID
每个传感器节点产生的每一组读数都对应关系表中的 一行(无限虚拟关系表)
数据模型 (续)
研究实例(二)
Cougar系统把传感器网络看成是一个大型分布式数 据库系统,每个传感器对应于分布式数据库的一个 节点,存储部分数据. Cougar系统的数据模型支持传统的关系数据以及传 感器生成的感知数据(用时间序列来表示). Cougar系统实现了时间序列和关系数据之间的3类 操作:
SELECT COUNT(*) FROM sensors
Sensor # 3 1 Epoch 2
1 1 2 1 3
2 1 1
3 1 2
4 1 2
5 1 1
2 2 4 1 5 1 2 3
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch # Sensor # 4 1 Epoch 3
以数据为中心的数据存储方法的性能
数据存储方法
以数据为中心方法:指使 用数据名字来存储和查询 数据.通过数据名到传感 器节点的映射算法实现数 据存储. 外部存储方法:把所有感 知数据都存储在传感器以 外的计算机节点上. 内部存储方法:所有感知 数据都存储在产生该数据 的传感器节点上.
以数据为中心的数据存储方法的性能 (续) 三类数据存储方法开销
关系投影操作
1 2
积操作
查询语言
主要查询模式
快照查询 连续查询 基于实践的查询 基于生命周期的查询 基于准确率的查询
查询语言
基于SQL的查询语言(TinySQL);支持选择,投影,设 定采样频率,分组聚集,用户自定义聚集函数,事件 触发,生命周期查询,设定存储节点和简单的连接操 作
TinyDB查询语法 SELECT select-list [FROM sensors] WHERE predicate [GROUP BY gb-list [HAVING predicate]] [TRIGGER ACTION command-name[(param)]] [EPOCH DURATION time] /*定义查询执行的周期*/
P C
D E
流水线聚集范例
SELECT COUNT(*) FROM sensors
1
2
3 Depth = d
4
5
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1 1 2 1
1 Sensor # 1 Epoch 1
3 1
4 1
5 1
2 1 4 1 5 1 1 3
流水线聚集范例
Fjord
Fjord是UC Berkeley的Telegraph项目的一部分 包括两个组件 查询处理引擎
同时采用PUSH和PULL技术的查询处理引擎 根据计算环境的变化动态调整查询执行计划
传感器代理(Sensor proxy)
是传感器节点和查询处理器之间的接口. 主要功能: 避免传感器节点直接发送数据给大量感兴趣的用户. 指示传感器以预定义的方式来进行本地计算. 按照用户要求来控制传感器的采样率和传送率,以此来 减少能量消耗.
2 1 1 1
3 1 2 3
4 1 2 2
5 1 1 1
2 4 1 5 2 1 3 3
1 3 4
2 3
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch # Sensor # 3 1 Epoch 4
2 1 1 1 1
3 1 2 3 3
4 1 2 2 2
5 1 1 1 1
半分布式结构
数据处理过程
传感器节点执行某些计算来聚集数据,以此减少通 讯开销.
比如,检测交通量的传感器可以通过原始的压力数据来计 算每个时间片断内经过的车辆数.
经过预处理的数据被传送到中央服务器进行进一步 处理.
范例:
Fjords ("Framework in Java for Operators on Remote Data Streams") Cougar
传感器网络数据管理面临的挑战
传感器网络的组成及特征 传感器网络数据管理的要求
传感器网络数据管理要求
节能
由于通讯消耗的能量比计算要大;因此,为 了减少能量消耗应该尽可能减少通讯量.
分散计算
集中计算和存储会存在性能瓶颈和单个节点 故障,因此,分散计算要求同时提高系统性 能和容错能力.
传感器网络数据管理要求 (续)
一维分布式索引
DIFS (Distributed Index Features in Sensor networks) 参考:DIFS: A Distributed Index for Features in Sensor Networks
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
查询语言
支持连续周期性查询 不支持查询触发器 Cougar查询语法 SELECT select-list FROM [Sensordata S] [WHERE predicate] [GROUP BY attributes] [HAVING predicate] DURATION time-interval /* 指定查询的生命期*/ EVERY time-span /*定义查询执行的周期*/
数据命名方法
层次命名方法
CHINA/Universities/DLUT/CS/cameral
"属性-值"命名方法
type=camera value=image.jpg location="CS Dept, Dalian University of Technology, Dalian, China" 数据的命名方法隐含地定义了数据能够被存取的方式.
①关系投影操作:把一个时间序列转换成一个关系. ②积操作:输入一个关系和一个时间序列,输出一个新的 时间序列. ③聚集操作:输入是时间序列,输出是关系
时间序列和关系数据之间操作
编号 1 2 3 … 编号 1 编号 1 2 3 … 南京 … 14 14 2005.11.01 地点 北京 地点 哈尔滨 南京 温度 10 4 湿度(%) 20 15 时间(s) 2005.10.31 2005.10.31 北京 哈尔滨 2 最低温度 10 4 温度 10 4 14 湿度(%) 20 15 14 时间(s) 2005.10.31 2005.10.31 2005.11.01 编号 温度 10 4 时间(s) 2005.10.31 2005.10.31
分布式结构
分布式结构的特性
前提假设,每个传感器节点具有较高的存储, 计算和通讯能力. 把所有的计算和通讯都下推到传感器网络中, 没有中心服务器. 使用Hash 技术(比如,DHT,分布式Hash表) 来进行存储和检索传感器检测到的事件.
层次结构
主要包括两个组成部分
传感器网络层,每个传感器节点具有一定的计算和 存储能力.其作用是:①从代理接受命令②进行本 地计算③将数据传送到代理. 代理网络层.每个代理节点完成五项任务:①从用 户接收查询②向传感器节点发送控制命令或者其它 信息③从传感器节点接收数据④处理查询⑤将查询 结果返回给用户.
Cougar
Cornell 大学的传感器项目 基本思想:
尽可能多地把计算下推到传感器节点,以此 来减少传感器和服务器之间地通讯.
传感器节点执行任务:
本地计算 和邻居传感器节点进行通讯来完成聚集—网 内聚集(in-network aggregation)
半分布式结构 (续)
缺点:
仍然存在大量的数据需要发送到中心服务器 进行进一步处理.
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
系统结构
四种主要的系统结构
集中式结构 半分布式结构 分布式结构 层次结构
集中式
数据处理过程
数据按照事先指定的方式从传感器网络传输 到中心服务器 中心服务器处理用户查询请求
缺点
存在性能瓶颈和单个节点失败 通讯开销大
有效的查询处理
传统数据库
持久的关系 Ad-Hoc查询 随机的访问 "无限"的磁盘空间 当前状态有效 被动的存储 相对较低的更新率 很少"实时服务" 假定数据精确无误
传感器数据库
瞬间的流 连续的查询 序列化的访问 有限的主存 数据的到达顺序是关键 主动的存储 数据采样频率未知 实时响应 过时/近似的数据
层次结构 (续)
特点
克服了单点失败和性能瓶颈 增强系统可扩展性 减少了通讯开销 更好地使用适应性查询处理技术 充分利用查询空间局部性和用户兴趣局部性特征
Spatial &Interest Locality
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
数据库 AVG平均
AVG
AVG
AVG
Fra Baidu bibliotek
D
D B计划
D
聚集操作的处理技术
集中式与分布式聚集技术 流水线聚集技术
集中式与分布式聚集技术
集中式聚集:
所有的传感器首先将数 据都传送到客户端,然 后在客户端执行聚集.
分布式聚集:
在传感器网络内由多个 传感器节点协作执行聚 集操作,最后将聚集结 果路由到客户端.
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
数据存储与索引技术
在以数据为中心的存储系统中,每个传感器节 点产生的数据按照数据名存储在网络的某个或 某些传感器节点上.根据数据项的名字,可以 很容易地在传感器网络中找到相应的数据项.
数据命名方法 以数据为中心的数据存储方法的性能 数据中心存储方法 一维分布式索引
1 3 4 5
2 3 4
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch #
数据中心存储方法
地理散列函数
地理散列方法把数据的关键字被一个散列函数随机 地映射为一个地理位置,即地理坐标(x,y)(注意:这 种映射可以是一对多的).
地理路由协议GPSR(greedy perimeter stateless routing) 地理散列方法和GPSR的结合 增强地理散列方法的鲁棒性 地理散列方法的结构复制
传感器网络数据管理
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
传感器网络数据管理介绍
传感器网络数据管理的目的
把传感器网络上数据的逻辑视图(命名,存 取和操作)和网络的物理实现分离开来,使 得传感器网络的用户和应用程序只需要关心 所要提出的查询的逻辑结构,而无需关心传 感器的细节.
传感器网络数据查询处理方法
集中式查询处理 分布式查询处理
集中与分布式查询处理方法
集中查询处理适应于:
获取数据存储于中心数据库;在中心数 据库上对查询进行处理 传感器能源充足,而且数据采集周期长 的应用环境 例如: A计划
数据库 AVG平均
D
D A计划
D
分布式优点:
在网络内对数据进行聚集操作 减少数据传送 降低节点和网络地能量消耗 提高查询响应地实时性 例如:B计划
查询处理技术
传感器网络数据查询类型
历史查询:对从传感器获得的历史数据的查询.
"列出1999年A区域的平均降水量"
快照查询:对传感器网络在某一给定时间点的查询.
"列出所有传感器当前的温度值"
连续查询:关注某一段时间内传感器网络数据的变化 情况
"列出从现在开始24小时内,A区域每30分钟内的最高温度"
流水线聚集技术
在传感器网络内进行聚集计算时,由 于通讯失败,节点移动等原因,很难 保证结果完全正确. 流水线聚集技术把时间分为多个长度 为i秒的时间段.在每个时间段内,收 i 到聚集请求的每个节点都将前一个时 间段收到的子节点的数据与本地感知 数据作聚集,并将得到的部分聚集结 果向上传送.
能够使未收到聚集请求的节点参与聚集 运算. 每隔i秒都收到一个新的聚集结果.
数据模型
数据模型
现有的研究主要是对传统的关系模型,对象关系模 型或时间序列模型的有限扩展. 将感知数据视为分布在多个节点上的关系,将传感 器网络看成是一个分布式数据库 采用时间序列和概率模型表示感知数据的时间特性 和不确定性
数据模型
研究实例(一)
TinyDB系统的数据模型是对传统的关系模型的简单扩 展.它把传感器网络数据定义为一个单一的,无限长 的虚拟关系. 该表具有两类属性:
感知数据属性:温度值,电压值 描述感知数据的属性:感知数据的获得时间,传感器节点ID
每个传感器节点产生的每一组读数都对应关系表中的 一行(无限虚拟关系表)
数据模型 (续)
研究实例(二)
Cougar系统把传感器网络看成是一个大型分布式数 据库系统,每个传感器对应于分布式数据库的一个 节点,存储部分数据. Cougar系统的数据模型支持传统的关系数据以及传 感器生成的感知数据(用时间序列来表示). Cougar系统实现了时间序列和关系数据之间的3类 操作:
SELECT COUNT(*) FROM sensors
Sensor # 3 1 Epoch 2
1 1 2 1 3
2 1 1
3 1 2
4 1 2
5 1 1
2 2 4 1 5 1 2 3
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch # Sensor # 4 1 Epoch 3
以数据为中心的数据存储方法的性能
数据存储方法
以数据为中心方法:指使 用数据名字来存储和查询 数据.通过数据名到传感 器节点的映射算法实现数 据存储. 外部存储方法:把所有感 知数据都存储在传感器以 外的计算机节点上. 内部存储方法:所有感知 数据都存储在产生该数据 的传感器节点上.
以数据为中心的数据存储方法的性能 (续) 三类数据存储方法开销
关系投影操作
1 2
积操作
查询语言
主要查询模式
快照查询 连续查询 基于实践的查询 基于生命周期的查询 基于准确率的查询
查询语言
基于SQL的查询语言(TinySQL);支持选择,投影,设 定采样频率,分组聚集,用户自定义聚集函数,事件 触发,生命周期查询,设定存储节点和简单的连接操 作
TinyDB查询语法 SELECT select-list [FROM sensors] WHERE predicate [GROUP BY gb-list [HAVING predicate]] [TRIGGER ACTION command-name[(param)]] [EPOCH DURATION time] /*定义查询执行的周期*/
P C
D E
流水线聚集范例
SELECT COUNT(*) FROM sensors
1
2
3 Depth = d
4
5
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1 1 2 1
1 Sensor # 1 Epoch 1
3 1
4 1
5 1
2 1 4 1 5 1 1 3
流水线聚集范例
Fjord
Fjord是UC Berkeley的Telegraph项目的一部分 包括两个组件 查询处理引擎
同时采用PUSH和PULL技术的查询处理引擎 根据计算环境的变化动态调整查询执行计划
传感器代理(Sensor proxy)
是传感器节点和查询处理器之间的接口. 主要功能: 避免传感器节点直接发送数据给大量感兴趣的用户. 指示传感器以预定义的方式来进行本地计算. 按照用户要求来控制传感器的采样率和传送率,以此来 减少能量消耗.
2 1 1 1
3 1 2 3
4 1 2 2
5 1 1 1
2 4 1 5 2 1 3 3
1 3 4
2 3
流水线聚集范例
SELECT COUNT(*) FROM sensors
1 1
Epoch # Sensor # 3 1 Epoch 4
2 1 1 1 1
3 1 2 3 3
4 1 2 2 2
5 1 1 1 1
半分布式结构
数据处理过程
传感器节点执行某些计算来聚集数据,以此减少通 讯开销.
比如,检测交通量的传感器可以通过原始的压力数据来计 算每个时间片断内经过的车辆数.
经过预处理的数据被传送到中央服务器进行进一步 处理.
范例:
Fjords ("Framework in Java for Operators on Remote Data Streams") Cougar
传感器网络数据管理面临的挑战
传感器网络的组成及特征 传感器网络数据管理的要求
传感器网络数据管理要求
节能
由于通讯消耗的能量比计算要大;因此,为 了减少能量消耗应该尽可能减少通讯量.
分散计算
集中计算和存储会存在性能瓶颈和单个节点 故障,因此,分散计算要求同时提高系统性 能和容错能力.
传感器网络数据管理要求 (续)
一维分布式索引
DIFS (Distributed Index Features in Sensor networks) 参考:DIFS: A Distributed Index for Features in Sensor Networks
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
查询语言
支持连续周期性查询 不支持查询触发器 Cougar查询语法 SELECT select-list FROM [Sensordata S] [WHERE predicate] [GROUP BY attributes] [HAVING predicate] DURATION time-interval /* 指定查询的生命期*/ EVERY time-span /*定义查询执行的周期*/
数据命名方法
层次命名方法
CHINA/Universities/DLUT/CS/cameral
"属性-值"命名方法
type=camera value=image.jpg location="CS Dept, Dalian University of Technology, Dalian, China" 数据的命名方法隐含地定义了数据能够被存取的方式.
①关系投影操作:把一个时间序列转换成一个关系. ②积操作:输入一个关系和一个时间序列,输出一个新的 时间序列. ③聚集操作:输入是时间序列,输出是关系
时间序列和关系数据之间操作
编号 1 2 3 … 编号 1 编号 1 2 3 … 南京 … 14 14 2005.11.01 地点 北京 地点 哈尔滨 南京 温度 10 4 湿度(%) 20 15 时间(s) 2005.10.31 2005.10.31 北京 哈尔滨 2 最低温度 10 4 温度 10 4 14 湿度(%) 20 15 14 时间(s) 2005.10.31 2005.10.31 2005.11.01 编号 温度 10 4 时间(s) 2005.10.31 2005.10.31
分布式结构
分布式结构的特性
前提假设,每个传感器节点具有较高的存储, 计算和通讯能力. 把所有的计算和通讯都下推到传感器网络中, 没有中心服务器. 使用Hash 技术(比如,DHT,分布式Hash表) 来进行存储和检索传感器检测到的事件.
层次结构
主要包括两个组成部分
传感器网络层,每个传感器节点具有一定的计算和 存储能力.其作用是:①从代理接受命令②进行本 地计算③将数据传送到代理. 代理网络层.每个代理节点完成五项任务:①从用 户接收查询②向传感器节点发送控制命令或者其它 信息③从传感器节点接收数据④处理查询⑤将查询 结果返回给用户.
Cougar
Cornell 大学的传感器项目 基本思想:
尽可能多地把计算下推到传感器节点,以此 来减少传感器和服务器之间地通讯.
传感器节点执行任务:
本地计算 和邻居传感器节点进行通讯来完成聚集—网 内聚集(in-network aggregation)
半分布式结构 (续)
缺点:
仍然存在大量的数据需要发送到中心服务器 进行进一步处理.
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
系统结构
四种主要的系统结构
集中式结构 半分布式结构 分布式结构 层次结构
集中式
数据处理过程
数据按照事先指定的方式从传感器网络传输 到中心服务器 中心服务器处理用户查询请求
缺点
存在性能瓶颈和单个节点失败 通讯开销大
有效的查询处理
传统数据库
持久的关系 Ad-Hoc查询 随机的访问 "无限"的磁盘空间 当前状态有效 被动的存储 相对较低的更新率 很少"实时服务" 假定数据精确无误
传感器数据库
瞬间的流 连续的查询 序列化的访问 有限的主存 数据的到达顺序是关键 主动的存储 数据采样频率未知 实时响应 过时/近似的数据
层次结构 (续)
特点
克服了单点失败和性能瓶颈 增强系统可扩展性 减少了通讯开销 更好地使用适应性查询处理技术 充分利用查询空间局部性和用户兴趣局部性特征
Spatial &Interest Locality
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
数据库 AVG平均
AVG
AVG
AVG
Fra Baidu bibliotek
D
D B计划
D
聚集操作的处理技术
集中式与分布式聚集技术 流水线聚集技术
集中式与分布式聚集技术
集中式聚集:
所有的传感器首先将数 据都传送到客户端,然 后在客户端执行聚集.
分布式聚集:
在传感器网络内由多个 传感器节点协作执行聚 集操作,最后将聚集结 果路由到客户端.
提纲
传感器网络数据管理介绍 系统结构 数据模型和查询语言 数据存储与索引技术 查询处理技术 总结
数据存储与索引技术
在以数据为中心的存储系统中,每个传感器节 点产生的数据按照数据名存储在网络的某个或 某些传感器节点上.根据数据项的名字,可以 很容易地在传感器网络中找到相应的数据项.
数据命名方法 以数据为中心的数据存储方法的性能 数据中心存储方法 一维分布式索引