• 主页
  • 相册
  • 随笔
  • 目录
  • 存档
Total 244
Search AboutMe

  • 主页
  • 相册
  • 随笔
  • 目录
  • 存档

高级数据库笔记-设计

2020-07-02

1. 两种设计策略

  • Top_Down
    • 新设计一个数据库系统
  • Bottom-UP
    • 已存在许多数据库系统,并将 它们集成为一个数据库

1.1. Top_Down

  • 需求分析(Requirement analysis)
  • 概念设计、视图集成、E-R 表示
  • 分布设计、数据分片和分配
  • 物理设计
  • 性能调优(Tuning)

2. 分片的定义

  • 分片(Fragmentation):对全局数据的划分。
  • 片段(Fragment):是分布式数据库中数据的存储单位。划分的结果称为片段。
  • 分配(Allocation):对片段存储场地的指定,称为分配。
    • 当片段存储在一个以上场地时,称为数据复制 (Replication)存储。
    • 如果每个片段只存储在一个场地,称为数据分割(Partition)存储

2.1. 关系

2.2. 分片的作用

  • 减少网络传输量
  • 增大事务处理的局部性
  • 提高数据的可用性和查询效率
  • 使负载均衡

2.3. 分片的原则

设计者必须考虑数据如何分布 在各个场地上,即全局数据如何进行逻辑划分和物理分配问题

  • 完备性
    • 所有全局数据必须映射到某个片段上
  • 可重构性
    • 所有片段必须可以重新构成全局数据
  • 不相交性
    • 水平划分的各片段所包含的数据不允许相同

2.4. 分片种类

  • 水平分片
    • 按元组进行划分,由分片条件决定
  • 垂直分片
    • 按关系属性划分,除关键字外,其他属性不允许出现在多个分片中
  • 混合分片
    • 即包括水平分片也包括垂直分片

3. 水平分片的设计

水平分片实际上是关系的选择操作,因此,用选择操作σ表示,选择条件为分片谓词q,则R的片段可表示为: $σ_q(R)$

求证(Dno=201)∪( Dno=202 )∪( Dno<>201∩Dno<>202 )=T

1
证明: (Dno=201)∪ (Dno=202)∪ (Dno <> 201 ∩ Dno <> 202) = ((Dno=201) ∪ (Dno=202)) ∪(¬ ((Dno=201 ∪ Dno=202)) =T

3.1. 水平分片的影响因素

基于谓词条件划分关系

  • 定性信息
    • 简单谓词(simple predicate):只包含一个操作符号(比如∧)的查询谓词,称为简单谓词
    • 小项谓词(Minterm predicate):由多个简单谓词组成 的查询谓词称为小项谓词
      • TITLE = “Elect. Eng.”∧SAL > 30000
  • 定量信息

最小性:如果简单谓词集中所有简单谓词都是相关(relevant)的, 则该简单谓词集具有最小性。

3.2. 基本水平分片步骤

  • 找到具有完备性和最小性的简单谓词集合
  • 派生小项谓词集合
  • 确定有意义的小项谓词集,去除无意义的小项谓词

3.3. 导出水平分片(Derived horizontal fragmentation)

一个关系的分片不是基于关系本身的属性,而是根据另一 个与其有关联的关系的属性来划分,这种划分为导出水平划分。

例如

关系WORKS{ENO,PRJNO,HOURS} 关系EMP{ENO,ENAME,SALARY,DNO} 将WORKS按DNO进行水平分片,分片条件同 EMP的水平分片条件,得到的导出水平分片为W1、 W2和W3。

4. 垂直分片的设计

垂直分片是将一个关系按属性集合分成不相交的子集 (主关键字除外),属性集合称为分片属性

垂直分片是指定属性集上的投影操作。用投影运算∏表示, 投影属性为分片属性

  • $E1=∏_{ENO,ENAME,BIRTH}(EMP)$

4.1. 验证

垂直分片也应满足完备性、可重构性和不相交性

4.2. 混合分片

先进行垂直分片,分为E1和E2。然后,将E2进行水平分 片,分为E21、E22 和E23

5. 分片的表示方法

  • 图形表示法
  • 分片树表示法

6. 分配设计

全局数据经过分片设计,得到各个划分的片段,片 段到物理场地的存储映射过程称为分配设计

  • 非复制分配
    • 每个片段只存储在一个场地上(全分割式分布库)
  • 复制分配
    • 每个片段在每个场地上存有副本(全复制分布库)
    • 每个片段只在部分场地上存有副本(部分复制分布库)

7. 数据复制技术

  • 减少网络负载
  • 提高系统性能
  • 更好地均衡负载
  • 用复制式存储技术也增加了数据一致性的维护代价
  • Notes
  • Sql
  • Notes
高级数据库笔记-全局查询
高级数据库笔记-体系结构
© 2024 何决云 载入天数...