当前课程知识点:高级数据库系统 >  第八讲 分布式数据库的设计 >  4. 分布式数据库设计案例讲解 >  8-4. 分布式数据库设计案例讲解(1)

返回《高级数据库系统》慕课在线视频课程列表

8-4. 分布式数据库设计案例讲解(1)在线视频

8-4. 分布式数据库设计案例讲解(1)

下一节:8-4. 分布式数据库设计案例讲解(2)

返回《高级数据库系统》慕课在线视频列表

8-4. 分布式数据库设计案例讲解(1)课程教案、知识点、字幕

下面我们就用一个实例来说明一下自顶向下的这样一个重构法来设计分布式数据库

这个例子在我们高级系统数据库这本书里面有详细的介绍

在邵佩英编的《分布式数据库系统》里面也有

但是我们把它拿出来,因为它是一个比较典型的应用

我们把它拿出来给大家作为一个讲解,这个系统是一个飞机的订票系统

我们把它的一个需求描述简化一下,实际上对于这样一个系统大家都比较清楚

我们重点说一下这个飞机订票系统,比如说它是要分布在三个网络站点

比如说这个网络站点和机场是一样的,在同一个地理区域

比如说我可能是在首都机场,可能还有一个南苑机场,还有一个其他的机场

这样也就是说它有三个机场,然后每个机场都有一个站点

也就是说这个数据库应该是分布在这样三个站点上的这样一个数据库

数据存储的都有哪些信息呢?

都是机场的一些规程,以及班机起降、旅客订票等等这样的一些信息

那么我们根据这样的一个需求,我们可以对它进行一个E-R图

也就是全局概念模型的建立

因为我们重构型的自顶向下首先要获得全局的一个逻辑模式

要获得全局的逻辑模式,我们首先要建立它的全局概念模式

全局概念模式我们还是用E-R图来表示

这和我们设计集中式数据库系统是完全一样的

所以我们就根据这样一些需求,然后画出它全局的概念模式

它有三个实体集,一个是班机、旅客和机场

每个实体集都有它自己的一些属性,我们在这个属性里面

为了节省空间,我们对于每一个属性都用一个线加一个小的椭圆

把属性的名字写在外面,这个也是可以的

带有下划线的属性,我们说是这个实体集的键码

那么在这个里面3个实体集还有4个联系分别是

旅客订票,因为如果我们要使用这个飞机系统的话肯定要支持旅客订票

然后旅客定完票之后,比如说哪天他需要进行登机

那么我们就需要进行登机检查,接下来可能还有一些其他的应用

比如说我们在机场上可能要查询一下

目前从某一个机场到另外一个机场起飞的飞机

或者说到达某一个机场之前的某一个时间段内

到达某一个机场的飞机的航班号,日期等,需要做这样一些查询

所以我们的联系就会有从机场

这个班机从某一个机场起飞以及到达另外一个机场的联系

这是它的概念模型,那么有了概念模型之后我们现在最重要的想要去分析什么呢?

我们需要去分析在全局概念模式这样一个基础之上

我应该如何对数据进行分片和分配的处理,如何对它进行分片和分配呢

那么我们就需要去搜集数据与它最相关的应用知识

一般来说,我们会搜集20%的最频繁的应用,然后去覆盖80%的数据访问

也就是说20和80按这样的一个规则,所以在这个里面我们也是一样

我们首先要关注他最频繁的20%的应用

在这些应用里面,我们感觉到订票肯定是非常频繁的应用

每天这个系统肯定要支持若干人在订票

另外登机也是一个,再有一个就是进行航班查询

这样的话我们就把应用先进行锁定

然后我们需要去了解这些应用都需要对哪些数据进行操作

要去进行分析,我们就要用操作模式进行表示

在这张ppt上右边这张图指的就是应用的操作模式

比如说订票,这个应用指的是旅客可以来预定机票

它预定机票的时候我们应该输入哪些信息,应该输出哪些信息

以及我们输出的实例应该是什么

那么在这个过程中哪些信息需要修改,我们在操作模式里面都有表示

比如说,我们要进行订票的话,我们首先要知道航班的日期

航班从哪个机场起飞,以及到达哪个机场

像这样的一些信息都是非常关键的信息

而且我们在进行订票的时候也需要有旅客的名字、电话等等这样一些信息

这样的话,比如说机场的一些符号我们可以说名称也行,符号也行

它的起飞时间、降落时间、班机的日期等等

这些信息都是我们在查询的时候需要使用的到的关键信息

当我们查询到信息需要进行订票的时候,哪些信息是需要我们进行显示的

我们需要显示出机场的名称、起飞时间、降落时间、班机的机号

它的日期、它的可用座位等等

如果我成功订票的电话,旅客还需要在系统里面写上它的名字和电话

以及订票的时候我们的一些座位信息

这些在系统里面都要进行修改,也就是说我们定了一张票

票就少了一张,也就是我们提供给另外一个旅客的就应该是另外一个信息

这些就是一个应用它要访问到的数据

这些数据哪些是关键的数据,哪些是进行输出的

我们要进行表示,比如说我们前面标有o的就是用来进行输出显示的

如果是关键信息我们用k

如果有些信息我们需要把它写回到数据库里面,我们就用w来表示

在这个操作模式里面,每一个实体集下面都有一些数字

这些数据表示的实际上就相当于是我们每次操作显示的一些实物数

比如说旅客,实际系统中旅客可能有很多,比如有1万,10万

但是目前查询的旅客只有1个,他查询的航班上面显示的次数

可能航班数量显示出来只有3个,但实际上我们整个飞机系统里面的航班有2万架

比如说2万架飞机所覆盖的机场有40个,但我这一次应用只输出两个就可以了

这就是用操作模式来表示某一个应用对数据访问的情况

除了订票之外,我们又给出比如说旅客登机的时候

他的一些访问数据的情况,还有就是我们要进行一些起飞应用

比如说飞机的起飞查询,一个机场起飞的30架航班的信息的话

我应该输入哪些信息,我们都可以通过这个操作模式把它显示出来

高级数据库系统课程列表:

第一讲 数据文件的组织与索引技术

-1. 数据文件的组织

--1-1 数据文件的组织

-2. 索引的概念与分类

--1-2 索引的概念与分类

-3. B+树索引

--1-3 B+树索引(1)

--1-3 B+树索引(2)

-4. 散列索引

--1-4 散列索引

-5. 小结

--html

-6.练习--作业

第二讲 查询处理及优化

-1. 查询代价的测量及查询处理过程概述

--2-1 查询代价的测量及查询处理过程概述

-2. 关系操作的基础算法

--2-2. 关系操作的基础算法(1)

--2-2. 关系操作的基础算法(2)

-3. 查询表达式的运算

--2-3 查询表达式的运算

-4.查询优化机制

--2-4 查询优化机制

-5.小结

--html

-6.练习--作业

第三讲 数据管理与恢复技术

-1. 数据库的故障及可恢复模型

--3-1. 数据库的故障及可恢复模型

-2. 事务及日志的相关概念

--3-2. 事务及日志的相关概念

-3. 基于undo日志的恢复机制

--3-3. 基于undo日志的恢复机制

-4. 基于redo日志的恢复机制

--3-4. 基于redo日志的恢复机制

-5. 小结

--html

-6. 练习--作业

第四讲 事务并发调度的相关概念

-1. 并发调度及相关概念

--4-1. 并发调度及相关概念

-2. 可串行化调度

--4-2. 可串行化调度

-3. 冲突可串行化调度

--4-3. 冲突可串行化调度

-4. 小结

--html

-5. 练习--作业

第五讲 基于封锁的并发控制机制

-1. 锁的概念及封锁的原理

--5-1. 锁的概念及封锁的原理

-2. 两阶段锁协议

--5-2. 两阶段锁协议

-3. 多粒度锁及意向锁

--5-3. 多粒度锁及意向锁

-4. 死锁的处理

--5-4. 死锁的处理

-5. 小结

--html

-6. 练习--作业

第六讲 并发控制的其它机制

-1. 基于时间戳的调度

--6-1. 基于有效性检验的调度

-2. 基于有效性检验的调度

--6-2. 基于时间戳的调度

-3. 小结

--html

-4. 练习--作业

第七讲 分布式数据库基本概念

-1. 分布式数据库系统的产生及定义

--7-1. 分布式数据库系统的产生及定义(1)

--7-1. 分布式数据库系统的产生及定义(2)

-2. 分布式数据库系统的模式结构与功能结构

--7-2. 分布式数据库系统的模式结构与功能结构

-3. 分布式数据库系统中存在的技术问题

--7-3. 分布式数据库系统中存在的技术问题

-4. 小结

--html

-5. 练习--作业

第八讲 分布式数据库的设计

-1. 分布式数据库的设计方法、内容和目标

--8-1. 分布式数据库的设计方法、内容和目标

-2. 自顶向下方法构建数据库

--8-2 . 自顶向下方法构建数据库

-3. 数据的分片和分布设计

--8-3. 数据的分片和分布设计(1)

--8-3. 数据的分片和分布设计(2)

-4. 分布式数据库设计案例讲解

--8-4. 分布式数据库设计案例讲解(1)

--8-4. 分布式数据库设计案例讲解(2)

--8-4. 分布式数据库设计案例讲解(3)

-5. 小结

--html

-6. 练习--作业

第九讲 分布式数据库查询机制

-1. 分布式查询处理的步骤和代价

--1. 分布式查询处理的步骤和代价

-2. 基于等价变换的查询优化

--2. 基于等价变换的查询优化

-3. 基于半连接算法的查询优化

--3. 基于半连接算法的查询优化

-4. 基于直接连接算法的查询优化

--4. 基于直接连接算法的查询优化

-5. 小结

--html

-6. 练习--作业

第十讲 分布式数据库的事务管理及恢复机制

-1. 分布式事务概述

--1. 分布式事务概述

-2. 分布式事务的两阶段提交协议

--2. 分布式事务的两阶段提交协议

-3.分布式并发控制概述

--3.分布式并发控制概述

-4. 并发控制的加锁机制

--4. 并发控制的加锁机制

-5. 并发控制的时标技术

--5. 并发控制的时标技术

-6. 小结

--html

-7.练习--作业

高级数据库技术期末试题

-试题--作业

8-4. 分布式数据库设计案例讲解(1)笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。