第11章_分布式数据库系统的发展趋势_
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
用户 用户
应用服务器
用户接口 查询处理 与数据库服务器接口 网络通信信道
数据服务器
与应用服务器接口 数据库功能
DB
DB
数据服务器方案
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
• 集中式服务器结构
– 明确分工, 减少工作站与服务器之间的通信 – 工作站对语言预处理(完整性检查, 安全控制) – 工作站能访问数据目录 – 服务器管理和更新目录, 工作站只读目录 – 优化DBMS和OS(软方法), 或者使用多处理机(硬 方法)解决服务器瓶颈问题
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
– 数据服务器专门用于分布式和集中式 数据库管理
• 在传统机器结构上,在分布式OS上执行 DBMS和分布式DBMS • 基于特定计算机系统结构实现分布式数据 库操作系统
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
工作站 …… 逻辑通信网络 数据服务器1 接口 分布式DBMS 局部管理功能 数据服务器n …… 接口 分布式DBMS 局部管理功能
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 多处理机结构
– 通过高速通信介质连接多个可独立处理的单元 – 通过分配,查询 操作和子操作到不同的处理单 元, 以并行执行方式完成互连查询, 内部查询, 及各种内部操作
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
3 分布式面向对象数据库 3.1 分布式面向对象数据库分配
• 分配
– – – – 涉及Method和类的分配 Method分配与类分配紧密相连 局部动作-局部对象 不用处理 局部动作-远程对象 两种处理方法
• 远程对象移动到动作站点 • 移动动作到相关的对象站点
– 远程动作-局部对象 – 远程函数(Function)-局部变量(Argument)
3 分布式面向对象数据库 3.2 分布式面向对象数据库水平分段
– 例 Class Engine as Object Attribute no-cylinder : Integer Capacity : Real Horsepower : Integer 谓词: p1: Horsepower ≤ 150 p2 : Horsepower > 150 于是Engine 分为Engine1 和 Engine2两个段
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 并行数据服务器与DDBS的不同 – 应用目标不同
• 并行中用户不专门使用某个站点, 所以不要求最 大化本地性处理
– 实现方式不同
• 站点间高速网互பைடு நூலகம், 传输代价小, 可以调节站点间 工作负载
– 各站点地位不同
• 不存在全局应用和局部应用 • 各站点完全不独立, 处理时只能发挥协同作用, 无 局部应用
– 可变分簇
• 依据“分簇度”对关系分片 • 分簇度是关系数据分片的站点数量, 是关系大小和 存取频率的函数 • 这种方法比聚簇和分簇更加复杂,因为数据分布的 改变可能导致结构调整
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 关联查询
– 传统系统中,关联存取是由查询处理器在编译 时利用数据目录完成 – 并行系统中, 采用“全局索引”复制到每一个 站点
• 本地索引(次簇索引)
– – – – 映射一个关系到站点的一组磁盘块上 类似于全局索引 第一级关于关系名 第二级关于属性索引(映射簇值E5到91磁盘块)
• 实验结果
– 短事务负载下, 分簇数量增加, 事务吞吐量增加 – 多连接复杂事务负载下, 太细分簇降低吞吐量
关于关系名的索引 …… P E 关系E中 关于ENO的索引 …… 磁盘块24 (E3至E4) 在站点j上的本地索引例子 磁盘块91 (E5至E6) …… G
徐俊刚
(xujg@gucas.ac.cn)
2008年 2008年 2008年2月——2008年6月 2008
第11章 分布式数据库系统的发展趋势 章
1. 并行数据库服务器与分布式数据库系统 2. 分布式知识库系统 3. 分布式面向对象数据库
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
工作站 ……
数据服务器
逻辑通信网络 接口 数据库功能
DB
…
DB
集中式服务器结构
1 并行数据库服务器与分布式数据库系统 1.1 数据库服务器
• 分布式服务器结构
– 两种查询处理方式
• 数据查询先提交到本地服务器,由其负责所 有的分布式查询处理 • 每个应用服务器上也都可以由分布式查询处 理器和数据目录操作器,直接访问远程数据 服务器
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 数据定位方法
– 全分簇:片段分布到系统中所有有磁盘的站点
• 散列算法分片:查询时, 与选择属性精确匹配的子查 询得以在一个站点上处理, 所有其它子查询在其他站 点处理, 适于大范围多用户工作负载 • 但复杂查询(多个连接)时, 聚簇方法较好
DB
…
DB
DB
…
DB
分布式服务器结构
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 冯.诺依曼型计算机结构的局限
– 不能发挥应用中普遍存在的内在的可并行处 理特性 • 关系操作本身的可并行性, JOIN中的多个 子查询, 单个查询中的多步操作 – 数据库管理性能受到I/O瓶颈的影响 • 内存速度比硬盘速度快1000倍 • 增加带宽提高磁盘存取的并行性 • 使用并行可存取的多个小磁盘
3 分布式面向对象数据库 3.2 分布式面向对象数据库水平分段
– 复杂属性:使用对象间的联系(如OwnerMember)信息分段 – 简单Method:当简单属性时, 对象分段按简 单属性方法分, Method在编译时确定, 若对 象被该Method使用则Method与该对象分在同 一段, 以获取极大化本地相关访问 – 复杂Method:要使用子类联系, 聚集联系, Method调用联系等来处理, 产生多个分段, 然 后再使用基于亲和力的方法来合并某些段
2 分布式知识库系统 2.1 知识库
• 基于逻辑的数据库
– 逻辑数据库, 推理数据库, 专家DBMS, 演绎 DBMS, 知识库等
• 知识库
– 存储常用知识的内涵数据库和存储事实的外 延数据库的联合体 – 内涵数据库
• 公理(命题)和规则等
– 外延数据库
• 基本数据
2 分布式知识库系统 2.1 知识库
• 全局索引
– 能确定关系在各站点分布的二级索引
• 主聚簇:关于关系名 • 次聚簇:关于关系中的某些属性
– 基于散列法或B树实现
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 例: 工程数据库
E(ENO, ENAME, DEPT, TITLE) S(TITLE, SAL) J(JNO, JNAME, BUDGET) G(ENO, JNO, RESP, DUR)
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 并行数据服务器数据定位
– 类似于分布式数据库中的数据片段定位 – 分簇(Declustering) 数据的水平分片 • 提高响应速度和内存查询并行度 – 聚簇(Clustering) 聚集关系的片段 • 综合查询或减少系统总体运行代价 – 程序应在数据存储的站点上运行 – DDBS中DBA根据对片段的使用情况检测, 进行调整, 包括移动片段和重组。
• 知识表示
– – – – 产生式规则 框架(Frames) 语义网络(Semantic Net) 数学逻辑
• 知识库语言
– Prolog – Datalog
3 分布式面向对象数据库 3.1 分布式面向对象数据库定义
• • • • • •
支持面向对象特征的数据库 对象 封装 持久对象 对象关系 关系对象
3 分布式面向对象数据库 3.2 分布式面向对象数据库水平分段
• 数据分布
– 封装带来了复杂性
• 水平分段
– 简单属性和方法上的分段
• 可以根据定义在该类属性上的谓词分段, C被分为 C1,C2,…,Cn. • 若C1,C2,…,Cn互不相交, 则可以将C定义为没有 实例的超类, Ci是其子类 • 若C1,C2,…,Cn不是互不相交, 那么没有一个简单 方法来处理
• 70年代的数据库机, 现代的数据库服务器 • 数据库服务器的优势
– – – – 功能专一 专用OS, DBMS与OS紧耦合, 提高DBMS的总体性能 适于现实世界的分布环境 充分利用先进的硬件体系结构
• 缺点
– 额外的通信开销 – 因此要求服务器提供较高层次的接口, 关系模型操作 是面向集合的操作, 所以成为服务器模型的首选
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器 处理机1 …… 处理机n 内存1 高速互联总线 … 内存n
…… 磁盘1 磁盘n 完全共享资源系统结构
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器 高速互联总线
处理机1
……
处理机n
内存1
……
内存n
…… 磁盘1 磁盘n 完全不共享资源系统结构
3 分布式面向对象数据库 3.1 分布式面向对象数据库定义
• 复制
– 单个对象, 对象类, 对象集合等都可以是复制 的单位
总
结
• 并行数据库服务器与分布式数据库系统 • 分布式知识库系统 • 分布式面向对象数据库
• 全局索引(查询ENO=‘E5’)
– 第一级关于关系名索引映射到E关系的ENO 属性索引 – 第二级索引进一步映射值E5到站点j
关于关系名的索引 …… P E 关系E中 关于ENO的索引 …… 站点j (E3至E6) 站点n (E7至E8) …… G
…… 站点1 (E1至E2)
全局索引例子
1 并行数据库服务器与分布式数据库系统 1.2 并行数据服务器
• 类型
– 完全共享资源结构
• 对每个数据项的存取都要经过公共通信线路,引 起通信瓶颈 • 类似于集中式DBMS,差别是数据库操作可以并行 处理
– 完全不共享资源结构
• 高功能计算机系统可以由多个较小的系统替代 • 每个站点都要实现全局数据目录,分布数据定义 和控制,分布查询处理和分布式事务管理 • 站点不能运行应用程序
3 分布式面向对象数据库 3.2 分布式面向对象数据库垂直分段
• 垂直分段
– 比水平分段更复杂, 要考虑元类和分段类的 子类间的子类型(Subtype)联系, 分段类本身 间的联系, Method的定位等等.
• 路径分段(Path Partition)
– 复合(Composite)对象上的表示成一个构成结 构化索引的节点层次