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

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

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

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

下一节:html

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

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

接下来我们来设计这个极化表

极化表是用来表示从一个站点发出的应用,它所需要访问某一个片段的概率

对于这个来说也是一样,在最初我们要跟业务人员交流

或者在业务流程中,对以往的数据进行统计、分析得出来的

比如说,我们这个里面根据调研就得出该表的这样一种形式

对于机场,F1、F2、F3,对于班机,我们用A1、A2、A3

后面还有可能有旅客,因为空间的限制问题我们就不写了

接下来我们就看,每一个应用在某一个站点上对它激活的概率

比如说,对于片段F1在第一站点上对于订票这个应用的激活概率就是80%

F2在第一个站点上对于订票应用的激活是10%

第三个片段在第一个站点上订票应用激活的概率是10%

所以这样的话,我们就可以用一张表格把某一个站点

对某一个应用激活访问某一个数据的概率全部总结出来

后面我们就可以应用它来进行数据的分配

有了这几张表之后,我们就可以进行飞机订票系统的分布设计

我们这个设计就是为了满足整个应用的最大本地化

所有的应用最好不要去跨站点,当然除非一些全局应用没有办法需要进行跨越

对于我们这个例子来说,我们各个实体集采用的分片就是根据刚才我们分析的

比如说机场,它水平分片是最好,我们就按照区域对它进行基本的水平分片

分为机场1、机场2、机场3,班机就根据起飞的机场区域

进行导出式的水平分片,划分成班机1、班机2、班机3

比如说从机场1起飞的、从机场2起飞的、从机场3起飞的

对于旅客,我们是按照旅客订票涉及的班机起飞的机场所涉及的区域

进行导出水平分片,总共有7个

比如说从一个区域起飞的、从两个区域起飞的、从三个区域起飞的,这样的7个片段

这是它的分片,接下来我们就要对这些片段进行一个分配

这个分配是要将这些片段分配在3个站点上,首先我们要进行一个非冗余的分配

非冗余分配我们采用的就是最佳适应法

比如说对于站点1,我们要把机场1的片段分配到站点1上

机场2的片段分配到站点2上,机场3的片段分配到站点3上

同理我们的班机也是一样,班机1分配在站点1,班机2分配在站点2,班机3分配在站点3

接下来是旅客,我们前面有旅客是从1个站点,比如说

第一个片段的旅客是从一个站点起飞的,这样的话我们就可以把旅客1分配到1站点

旅客2分配到2站点,旅客3分配到3站点

但是旅客4、旅客5、旅客6都是从两个站点起飞的

所以这个时候旅客4、旅客5、旅客6如何去进行分配?

这就涉及到冗余分配,因为他是从两个站点起飞的

还有一个旅客7是从三个站点起飞的,所以这个我们就要涉及到冗余分配的问题

当然对于冗余分配我们可以采用前面讲的附加拷贝法或者得益站点法

无论用哪一个都可以,从我们这个应用来说就比较简单

也就是说旅客4、旅客5、旅客6都是从两个站点起飞

也就是说旅客4是从站点1和站点2起飞的,那我们就把旅客4分配到站点1和站点2上

把旅客5分配在站点2、站点3,把旅客6分配在站点1和站点3上

这两个正好是本地站点、本地应用

旅客7是从三个站点,也就是说他是从1、2、3这三个站点起飞的

所以我们就把旅客7这个片段分别分配在站点1、站点2、站点3上

实现了这样一个分配,这样的话我们就把片段分配完毕了

分配完了之后,我们就可以根据这样一种分配方式来重构各个站点的局部的概念模型

我们也把它叫做重构局部模式

比如说站点1我们就可以给出它的概念模型是什么样子的呢

就是旅客、班机和机场,但是它的数据都已经不是全局的了

而是片段的了,比如旅客有片段1、4、5、7

班机的片段是班机1,机场的片段是机场1

因为班机1也可能会到其他的机场上所以我们再引出一个联系来

班机-到,它到的可能是站点2或者站点3的机场实例

我们就把局部模式变成这样

同理我们把站点2上的局部模式也变成这样,旅客变成2、4、6、7

班机也变成2,机场也变成2,然后班机有可能到站点1、站点2

同理我们站点3上的局部概念模型也是一样

把这个构建完了之后,我们就可以构建局部数据库的逻辑模式

然后进行数据库的定义和实施,那么这一章我们就介绍完了

这一章我们主要介绍了分布式数据库它的设计方法问题

重点讲解了分布式数据库设计的内容、目标以及它的设计方法

关于设计方法,我们重点讲述了自定向下的一个重构法

我们通过实例对这个重构法进行了一个说明

大家需要掌握自顶向下重构法的基本步骤和基本方法

将来在实际应用当中如果涉及到这样一些工作可以有一些思路

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

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

-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. 分布式数据库设计案例讲解(3)笔记与讨论

也许你还感兴趣的课程:

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