备战软考数据库:8.6 关系模式的分解

关系模式的分解:

  • 设有关系模式R(U),属性集为UR_1,R_2,dots,R_kU的子集,并且有R_1cup R_2 cup dots cup R_k= U,关系模式R_1,dots,R_k的集合用rho表示,rho = left{R_1,R_2,dots,R_kright}
  • rho代替R的过程,即为关系模式的分解过程。
  • R称为范关系模式,r是范关系模式的一个范关系实例;
    rho=left{R_1,dots,R_kright}称为数据库模式,sigma = <r_1,dots,r_k data-recalc-dims=" />称为数据库实例
  1. 数据等价的分解,指的是两个数据库实例是否表示同样的信息内容,用无损分解衡量
  2. 依赖等价的分解,指的是两个数据库模式是否有相同的依赖闭包。

无损分解与有损分解:

  • r分解成sigma = <r_1,dots,r_k data-recalc-dims=" />,若对r_1,r_2,dots,r_k进行投影和联接操作可以重新的到r,则称为无损分解
  • 若通过投影和联接操作无法重新的到r,则称为有损分解

与函数依赖之间的关系:

  • R是一个关系模式,FR上的一个函数依赖集。若将R分解为数据库模式rho=left{R_1,dots,R_kright},如果对R中满足F的每一个关系r,都有:
    r=pi_{R_1}(r)bowtie{pi_{R_2}(r)}bowtiedotsbowtie{pi_{R_k}}(r)
    则称rho=left{R_1,dots,R_kright}是相对于F的无损联接分解,否则为损失分解

保持函数依赖的分解:

  • F是属性集U上的函数依赖集,ZU的子集,FZ上的投影pi_Z(F)定义为:
    pi_Z(F)=left{Xrightarrow Y|Xrightarrow Y in F^+wedge XY subseteq Zright}
  • rho=left{R_1,dots,R_kright}R的一个分解,FR上的函数依赖集,如bigcup _{i=1}^{k}{pi_{R_i}(F)}models F,则称分解rho保持函数依赖集F

一个分解是否保持函数依赖的检验:

  • 逐步检验F中的每一条函数依赖是否能被bigcup _{i=1}^{k}{pi_{R_i}(F)}所逻辑蕴涵。

Leave a Reply

Your email address will not be published. Required fields are marked *