content
- 引入
- 相关基本概念
- DDB两大特性
- DDBS的作用和评价
- DDBS关键技术
引入
▍数据库发展历程
▍数据库发展方向
- Cloud Computing(云计算)
- data intensive scalable computing(数据密集型可扩展计算)
- Non-relational Data Model(非关系型数据模型)
- Relational Cloud(关系云)
▍分布式数据库的兴起
- 分布数据库管理系统兴起于70年代中期,推动其发展来自两方面:一方面是应用需求 ,另一方面是硬件环境的发展 。
- 比如全球及全国范围内的航空/铁路/旅游订票系统、银行通存通兑系统、水陆空联运系统、跨国公司管理系统、连锁配送管理系统等等。
- 这些应用都涉及地理上分布的团体、组织的局部业务管理和系统全局管理,采用成熟的集中式数据库管理系统也已无法实现应用需求。
相关基本概念
▍定义
分布式数据库(DDB) 是分布在一个计算机网络上的多个逻辑相关的数据库的集合。
分布式数据库管理系统(DDBMS) 是用来管理分布式数据库的软件。
分布式数据库系统(DDBS = DDB + DDBMS)是地理上分散而逻辑上集中的数据库系统。
▍节点与场地
分布式系统通常由计算机网络将各地理上分散的逻辑单位连接起来——被连接的逻辑单位称为节点(node)或场地(site)。
节点/场地可以是单独一台计算机,也可以由局域网组成。
▍集中式VS分布式
区分的关键在于——数据是否位于同一个节点/场地。
▍补充
分布式数据系统DDBS既不是多处理机系统,也不是基于服务器的系统。
反例为:松耦合/紧耦合的多处理机系统;网络节点上的集中式数据库系统
▍图解
DDB两大特性
❶ 数据透明性
- 分布透明性——全局用户看到的是全局数据,可以像使用集中式数据库一样使用它,不需要考虑它是不是分布式的(数据的存储场地 + 操作的执行场地)
- 复制透明性——DDB支持有控制的数据冗余,即数据可重复存储在不同的场地上。从而提高系统的可用性、可靠性、并行性
- 分片透明性——将一个关系分成几个子关系,其中的一个子关系称为分片。它可以存储在不同的场地。
理解:
逻辑层是用户语义层,物理层是具体实现细节。二者分离,且后者被隐蔽。
即无须考虑数据分片细节,对分片的调用(分片到分段的映射)由系统自动完成。
❷ 场地自洽性
- 设计自洽性
- 通信自洽性
- 执行自洽性
理解:
多个节点/场地的局部数据库在逻辑上集成为一个整体,并被所有用户使用,这种应用称全局应用。其用户称全局用户。
当然也允许用户只使用本地的局部数据库,这种应用称为局部应用。其用户为局部用户。
何为自洽性?就是DDBS的局部在设计、通信、执行方面的独立自主性
DDBS的作用和评价
▍作用
一言以蔽之——因为DDBS是物理上分散而逻辑上集中的 ,因此有效适应了 地理上分散的、逻辑上统一的、网络环境下的 分布式系统的需求。
▍评价
▶ 优点:
- 提高系统性能(吞吐率upup,响应速度upup)
- 可直接利用现有的设备和系统,降低投资
- 允许存储副本(可靠性、可用性、并行性)
- 可扩展性(可以随你的需求,增加或减少场地)
- 所有用户可共享数据
▶ 缺点:
- 系统复杂(万恶之源)
- 通信开销大
- 维护开销大
- 安全问题
DDBS关键技术
- DDB的设计 -----> 如何将数据分布到各个场地?如何设定复制型和非复制型数据?如何实现目录管理?
- 查询处理 -----> 如何设计事务到操作命令的转换?如何以最小的代价去查询?
- 并发控制 -----> 老生常谈的并发和同步问题?事务的一致性和隔离性问题?如何解决和预防死锁?
- 可靠性 -----> 分布式环境出了故障怎么恢复?如何实现事务的原子性和持久性?
- 安全性和完整性 -----> 用户授权和认证问题?访问权限控制问题?数据完整性约束问题?
M o r e More More