一、概述

  1. **优化器(Optimizer):**结合统计数据,在关系代数的若干等价形式中选择最优的等价形式,确定关系代数的执行算法,输出执行方案

  2. **执行方案(Evaluation Strategy):**可以用一棵自底向上的树表示

    image.png

二、关系代数的转化 Transformation of Relational Expressions

1. 等价关系代数式的定义

2. 等价规则

  1. R1:与关系的选择运算可以拆解为一系列选择运算

    $\sigma_{\theta_1\land\theta_2}=\sigma_{\theta_1}(\sigma_{\theta_2}(E))$

  2. R2:选择运算满足交换律(Commutative)

    $\sigma_{\theta_1}(\sigma_{\theta_2}(E))=\sigma_{\theta_2}(\sigma_{\theta_1}(E))$

  3. R3:在一系列投影运算中,只有最后一个投影运算起作用,其它投影运算可以忽略

    $\Pi_{L_1}(\Pi_{L_2}(\Pi…E))=\Pi_{L_1}(E)$ ,where $L_1\subseteq L_2\subseteq …$

  4. R4:选择运算可以和笛卡尔乘积、Theta 连接相结合

  5. R5:Theta 连接和自然连接满足交换律

    $E_1\bowtie_\theta E_2=E_2\bowtie_\theta E_1$

  6. R6A:自然连接满足结合律(Associative)

    $(E_1\bowtie E_2)\bowtie E_3=E_1\bowtie (E_2\bowtie E_3)$

    R6B:Theta 连接在下述条件下满足结合律,其中 $\theta_2$ 只包含来自 $E_2$ 和 $E_3$ 的属性

    $(E_1\bowtie_{\theta_1} E_2)\bowtie_{\theta_2\land\theta_3} E_3=E_1\bowtie_{\theta_1\land\theta_3} (E_2\bowtie_{\theta_2} E_3)$

  7. R7:选择运算在以下情形对连接运算具有分配律

    (先连接后选择 $\rightarrow$ 先选择后连接)

  8. R8:投影运算在以下情形对连接运算具有分配律

    (先连接后投影 $\rightarrow$ 先投影后连接)

  9. R9:集合的交运算和并运算满足交换律

  10. R10:集合的交运算和并运算满足结合律