Presentation is loading. Please wait.

Presentation is loading. Please wait.

第10章 数据库.

Similar presentations


Presentation on theme: "第10章 数据库."— Presentation transcript:

1 第10章 数据库

2 内容提要 管理服务层解决数据存储(数据库与海量存储技术),检索(搜索引擎),使用(数据挖掘与机器学习)以及如何不被滥用(数据安全与隐私保护)等问题。 本章将介绍关系数据库的相关概念以及物联网对数据库的新需求。

3 本章内容 10.1 数据库系统的起源与发展 10.2 关系数据库 10.3 关系代数 10.4 物联网与数据库
什么是数据库?数据库有哪些分类和新发展?

4 什么是数据库? 数据库是存储在一起的相关数据的集合 数据库的应用: 这些数据是结构化的,无害的或不必要的冗余,并为多种应用服务
数据库的存储独立于使用它的程序 对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行 数据库的应用: 个人电脑:快速查找文件 公司:财务管理软件 互联网:论坛数据存储 物联网:海量数据管理

5 早期的数据库系统:导航式数据库 网状模型 层次模型 缺点: 由图灵奖得主Charles Bachman提出 第一个数据库系统:IDS
典型代表:IBM的IMS系统 缺点: 数据的存储结构依赖于数据的类型 数据通过指针相互串联,访问到想要的内容,可能需要遍历整个数据库 查找操作代价大

6 关系数据库(RDBMS) 理论基石:Edgar Codd于1970年发表的论文《A Relational Model of Data for Large Shared Data Banks》 重要思想:逻辑组成与存储结构相分离 早期著名的关系数据库系统 System R(1970年,IBM公司) Ingres(1973年,加州大学伯克利分校) 当前主流的关系数据库系统

7 数据库系统的新发展 关系数据库系统的缺点 XML数据库(德国Software AG公司的Tamino等):针对XML数据
缺乏对真实世界实体的有效表达 缺乏对复杂查询的有效处理 缺乏对WEB应用的有效支持 XML数据库(德国Software AG公司的Tamino等):针对XML数据 时空数据库(甲骨文公司的Oracle 8i Spatial):针对地理信息系统 NoSQL数据库(Apache基金会的Cassandra):针对Web数据

8 本章内容 10.1 数据库系统的起源与发展 10.2 关系数据库 10.3 关系代数 10.4 物联网与数据库 什么是关系数据库?

9 关系数据库的架构图 同早期导航式数据库的架构相比, 关系数据库的优势为: 高度的数据独立性 开放的数据语意、数据一致性、数据冗余性
灵活的自定义数据操作语言

10 关系数据库的架构图(续) 查询过程三个步骤 应用程序将查询语句发送给数据库前端 数据库对查询语句进行语法解析和优化
数据库按照执行计划查询数据文件并返回结果

11 关系数据库模型:以绿野千传为例 关系数据库是一组具有不同名称的关系的集合
绿野千传( 存储的数据 传感器节点的基本信息(编号、经纬度等) 周围环境的温度、相对湿度、光照强度、传感器电压 图中每一个点都对应于部署在实地的一个传感器

12 关系数据库模型 关系(Relation) 关系即数据库中的表 关系表仅是数据逻辑上的组织形式,物理上可以用B+树等数据结构进行索引
可以直观表达真实世界的物理量

13 关系数据库模型 属性(Attribute) 关系表的每一列称为一个属性,描述了数据某一方面的信息 表的每一列包含且仅包含一个属性的值
属性的值可以有多种整数、实数、日期时间等多种类型

14 关系数据库模型 域(Domain) 域是一组具有相同数据类型的值的集合 表中的任何属性都必须定义在域上

15 关系数据库模型 元组(Tuple) 关系表中的每一行都叫做一个元组 元组是关系的基本组成元素 在关系中,元组排列的顺序并不重要

16 关系数据库模型 度(Degree):关系表包含的属性数目叫做度 基数(Cardinality):关系表包含的元组数目叫做基数

17 关系数据库模型 模式(Schema) 关系的名称及其所含属性的集合统称为模式 用“关系名称(属性1,属性2,属性3,……)”的方法来表示模式
属性在模式中的排列顺序是无序的

18 本章内容 10.1 数据库系统的起源与发展 10.2 关系数据库 10.3 关系代数 10.4 物联网与数据库
关系代数是关系数据库数据操作的基础。

19 10.3 关系代数 关系数据库的数据模型 关系代数的操作数是关系(传统代数的操作数是数字常量或变量 ) 关系代数的操作符主要分四类
定义了数据库的结构(关系、属性、元组等) 提供了查询数据、修改数据的方法 提供了基于 “关系代数”的特殊代数运算 关系代数的操作数是关系(传统代数的操作数是数字常量或变量 ) 关系代数的操作符主要分四类 传统的集合运算符 专门的关系运算符 比较运算符 逻辑运算符

20 传统的集合运算符 交(∩) 差(-) 并(∪) 广义笛卡尔积(×)
关系代数操作符 传统集合运算符 专门关系运算符 比较运算符 逻辑运算符 交(∩) 关系R与关系S的交由既属于R又属于S的元组组成,即R∩S={t|t∈R∧t∈S} 差(-) 关系R与关系S的交由属于R但不属于S的元组组成,即R-S={t|t∈R∧t∉S}。 并(∪) 关系R与关系S的交由属于R或属于S的元组组成,即R∪S={t|t∈R∨t∈S} 广义笛卡尔积(×) 假设集合R={a, b},集合S={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)} 关系R(度为n)与关系S(度为m)的广义笛卡尔积是一个有n+m项属性的元组的集合,其中前n个属性来自关系R,后m个属性来自关系S,即R×S={trts|tr∈R∧ts∈S}

21 传统的集合运算符(续) 关系R 关系S 传感器编号 经度 纬度 1 119.7227 30.2585 2 119.7224 30.2586
4 5 传感器编号 经度 纬度 1 3 5 7 9 关系R 关系S

22 传统的集合运算符(续2) R∪S R∩S 传感器编号 经度 纬度 1 119.7227 30.2585 2 119.7224 30.2586
4 5 7 9 R∪S R 1 2 3 4 5 S 1 3 5 7 9 传感器编号 经度 纬度 1 3 5 R∩S

23 传统的集合运算符(续3) 笛卡尔积 R-S R.传感器编号 R.经度 R.纬度 S.传感器编号 S.经度 S.纬度 1 119.7227
3 5 7 9 2 笛卡尔积 传感器编号 经度 纬度 2 4 R-S

24 专门的关系运算符 关系代数操作符 传统集合运算符 专门关系运算符 比较运算符 逻辑运算符 投影(π) 投影运算用于从已有关系R产生新关系S使得S包含R的部分列。表达式πA1,A2,…,An(R)的结果为仅包含R的属性列A1,A2,…, An的新关系S 经度longitude π经度(R)

25 专门的关系运算符 选择(σ) σ传感器编号=3(R) 选择运算用于从已有关系R产生新关系S使得S是R中满足条件C的元组的集合,记作σC(R)
关系代数操作符 传统集合运算符 专门关系运算符 比较运算符 逻辑运算符 选择(σ) 选择运算用于从已有关系R产生新关系S使得S是R中满足条件C的元组的集合,记作σC(R) σ传感器编号=3(R) 传感器编号sid 经度longitude 纬度latitude 3

26 专门的关系运算符 自然连接(⋈) 自然连接R⋈T 通过相等的共同属性值将两种关系连接起来 关系代数操作符 传统集合运算符 专门关系运算符
比较运算符 逻辑运算符 自然连接(⋈) 通过相等的共同属性值将两种关系连接起来 自然连接R⋈T 传感器编号 经度 纬度 温度 相对湿度 更新时间 2 24.16 85.75 9/17/2009 7:18 3 23.47 88.49 9/17/2009 6:19 5 23.57 86.01 9/17/2009 5:20

27 专门的关系运算符 θ连接 基于条件C将两种关系连接起来 取关系R和S的笛卡尔积R×S 从R×S选择所有满足条件C的元组 关系代数操作符
传统集合运算符 专门关系运算符 比较运算符 逻辑运算符 θ连接 基于条件C将两种关系连接起来 取关系R和S的笛卡尔积R×S 从R×S选择所有满足条件C的元组 R1.传感器编号 R1.经度 R1.纬度 R2.传感器编号 R2.经度 R2.纬度 1 4 5 2 3 对表R进行θ连接,其中条件C=R1.纬度>R2.纬度,R1、R2均为关系R

28 SQL查询语言 SQL(Structured Query Language)结构化查询语言是现代数据库中应用最广泛的查询语言。语法中支持的查询部分与关系代数十分接近。 选择运算σC(R):SELECT * FROM R WHERE C; 投影运算πA1,A2,…,An(σC(R)) :SELECT A1,A2,……,Ak FROM R WHERE C; 集合运算:运算符INTERSECT、EXCEPT、UNION 连接运算:SELECT R.sid, T.temperature, T.humidity, FROM R, T WHERE R.sid = T.sid 子查询:SELECT * FROM R WHERE latitude < (SELECT latitude FROM R WHERE sid = 3);

29 本章内容 10.1 数据库系统的起源与发展 10.2 关系数据库 10.3 关系代数 10.4 物联网与数据库
物联网数据有哪些特点?物联网中应如何管理数据?

30 传感器数据的特点 海量性:假设每个传感器每分钟内仅传回1K数据,则1000个节点每天的数据量就达到了约1.4GB 多态性 : 关联性及语义性
生态监测系统:温度、湿度、光照 多媒体传感网:视频、音频 火灾导航系统:结构化通讯数据 关联性及语义性 描述同一个实体的数据在时间上具有关联性(同一节点上温度随时间变化 ) 描述不同实体的数据在空间上具有关联性(同一区域内不同节点的温度值相近) 描述实体的不同维度之间也具有关联性(同一节点同一时间的温度与湿度值相关)

31 传感器网络的数据存储 分布式存储 集中式存储 数据可保存在“存储节点”上 查询被分发到网络中去,由存储节点返回查询结果
数据全部保存在sink端(汇聚点) 查询仅在sink端进行

32 传感器网络的数据查询 查询分为 近似查询技术 查询优化 快照查询:查询不固定,数据不固定 连续查询:查询固定,数据不固定
针对数据不确定,可减小网络通信开销 基于模型的查询 查询优化 针对查询固定,优化查询内容 节点仅返回所需要的数据 查询仅发往满足查询条件的地区

33 传感器网络的数据融合 互联网中数据流从丰富的网络资源流向终端设备,传感网中数据流从传感器设备流向网络
数据融合,即怎样分析、综合不同来源的无数的数据流,是传感网乃至物联网跨向大规模应用所必须越过的障碍 数据流管理系统

34 本章小结 内容回顾 本章介绍了数据库管理系统的发展,重点介绍了关系数据库的基本概念和关系代数的基本运算,并讨论了物联网中数据管理的特点。
重点掌握 了解数据库模型的发展,举例说明新兴数据库的发展趋势。 掌握关系、属性、域、元组、度、基数、模式的基本概念。 能根据要求写出相应的关系代数查询表达式。 掌握物联网数据管理的特点(数据特点,数据查询、存储和融合的方法)。


Download ppt "第10章 数据库."

Similar presentations


Ads by Google