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

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

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

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

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

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

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

有了操作模式之后,我们就非常清晰的了解到每一个应用对于数据的访问情况

所以再操作模式的基础之上,我们就可以整理出一个逻辑访问表来

针对每一个实体来估算每一个应用对它的访问情况

这个我们把它叫做逻辑访问表

比如说我就可以把班机这个实体集整理出来

比如说班机它的属性有机号、日期、座位图、登机口等等这样一些

接下来我们每一个应用,比如说订票、登机和起飞的这样一些查询

它对于班机的哪一些属性进行访问,它的访问是一种什么样的情况

比如说是作为关键字,还是需要进行输出,还是需要进行改写

而这个访问是通过哪一些联系,比如说是通过从-到这样的联系呢

还是通过哪一种联系来进行访问的,以及访问涉及的实例数等等

那么我们就把它做成一个表,有了这些

每一个应用来访问某一个数据的情况就比较清晰了

然后接下来我们就可以进行一些其他参数的统计

这个主要是用来划分数据的分片和分布需求

所以我们把它叫做分布需求的分析

在这个里面我们需要制作这样几张表

第一个是频率表,第二个是划分表,第三个就是极化表

频率表是需要我们进行调研的时候,它需要给出来的

也就是说我们需要知道每一个应用在每一个站点上

它被激活的频率,这个需要我们在调研的过程当中需要与工作人员进行交流

或者说根据它以往的业务量给出来的统计的或者是估算的一种数据

比如说给出这个表来就是订票这个应用在站点1上大概有1万次激活

在站点2上有2万次,站点3上有1万次

登机在站点1上有8千次,站点2上1万2千次等等

起飞查询在站点1上可能有100次,在站点2上面大概有120次

这种数据要提前调研好,给出来

接下来我们就给出一个划分表,这个划分表要给出什么呢

我现在目前这个系统里面的实体集

我的这个实体它各种可能的分片,以及它的一个选择倾向问题

这样的话我就可以去考虑,比如说我这个数据库应该如何分片

那么这个划分我们可以给出一个基本的一些划分和导出划分

我们一般来说分片的时候都从最明显的实体集,具有明显划分趋向的实体集开始

你比如说,在我们这个例子里面机场是有非常明显的划分的倾向,为什么呢

因为机场和站点是在同一个位置上的

一般来说,它的应用支持就是起飞应用

也就是说,我要查询从一个机场起飞多少架飞机

一般这种应用都是在本地,所以这样的话我对机场来说

最明显的划分就是按照区域

比如我这个区域的站点一个是E,一个是N,一个是S的话

我们就可以把机场划分成三个区域,三个片段按照区域E划分成一个片段F1

按照区域N划分成一个片段F2,按照区域S划分成一个片段F3

这个区域的名称我们现在用ENS来表示

在实际应用当中可能是具体的域名

后面这个谓词选择指的是我这样划分之后

比如说如果本来这个系统里面有100个元组的话

那么每个片段大概占多少,那么比如说像这个机场

如果我系统里面有100个元组,那么我按照F1区域来进行划分的话

F1大概就是45个元组,F2是30个元组,F1是25个元组

我们从这里面就是按照最有明显划分倾向的这样一个实体集出发

接下来我们再找其他的实体集,比如说我们看班机这个实体集

班机比机场要稍微复杂一点,因为它与三个应用都有关系

比如说,订票我们需要找班机,我们的登机需要有班机

我们的查询需要有班机,我们如何对它进行划分呢

对于班机的这个划分,因为我们考虑到无论是订票也好

还是登机也好,还是这个查询应用,实际上其实它都与机场有关

所以我们就可以考虑,它可以基于机场这个实体集对班机进行划分

基于机场这个实体集对班机进行划分的话,那么我们是怎么进行划分呢

我们可能因为它们俩之间的联系有从和到

也就是说我们这个班机可以从机场起飞,或者是到某一个机场

但实际上从我们的应用上来看,我们的机场的起飞应用是从某个机场起飞

比如说我们就可以有一个倾向选择

那么我们就可以按着机场这个实体集,按着导出从的这样一个联系

然后对班机来进行划分,是按照这样一种方式

接下来班机有了倾向之后,我们就可以对旅客进行划分

对旅客划分这个就更为复杂,比如说旅客我们怎么划分

一种方法就是因为每个旅客都有它的身份证号、有它的电话

比如说有人就想,我干脆用它的电话的前几位来对它进行划分也是可以的

但是我们在进行划分的时候可能需要考虑到

比如说,我们需要查询一些旅客的信息,什么情况下会查询

比如说有些特定的事件,突然有暴恐事件之类的

如果要查询一些旅客信息的话,就是某一个班机上一些旅客的信息

如果按照电话上来分经常产生远程的查询

这样它的效率可能会降低

所以一般的来说我们可能不会随意的根据旅客的某一些信息进行划分

而是我们会跟具体的应用结合在一起

比如说这个旅客,因为订票的时候有他

所以我们就可以根据订票,他和谁有联系

他和班机有关系,我们就可以根据班机来对旅客进行划分

根据班机对旅客进行划分,旅客有订票、登机

我们是按照订票划分还是按照登机划分呢?

这个都可以,我们不妨可以按照订票来进行划分

但是订票来划分的话,因为旅客会有多次的订票

它不可能说我就定一次,以后再也不定了

一般的来说,它可能会在不同的地方来订票

今天在北京,明天在大连对吧

那么我们按什么来划分呢,我们给他一个标准

以第一次订票的区域来进行划分,这个都是可以的

当然我们也可以以起飞地,比如我这个班机

我定了这个票之后我开始登机,我从什么地方起飞

我可以按照班机起飞的区域来进行划分

如果按照班机起飞的区域,比如说在我们这个数据库里面

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

也许你还感兴趣的课程:

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