数据库逻辑层优化策略
程序员文章站
2023-09-01 13:35:07
1、尽可能的早做选择和投影,可使中间结果变小,节省几个数量级的时间 2、把选择和投影串接起来,一元运算序列可以一起执行,只需对整个关系扫描一遍 3、把投影与其前或后的二元运算结合起来,在第一次用关系时去掉一些属性,可以避免多次扫描整个关系 4、把某些选择与其前的笛卡儿积合并成一个连接,当R*S有选择 ......
1、尽可能的早做选择和投影,可使中间结果变小,节省几个数量级的时间
2、把选择和投影串接起来,一元运算序列可以一起执行,只需对整个关系扫描一遍
3、把投影与其前或后的二元运算结合起来,在第一次用关系时去掉一些属性,可以避免多次扫描整个关系
4、把某些选择与其前的笛卡儿积合并成一个连接,当r*s有选择运算且其中有条件时r、s属性间比较的运算时,可将其转化成连接运算节省时间
5、执行连接运算前对关系做适当的预处理:文件排序、建立临时索引,可使两关系公共值高效连接
6、找出表达式里的公共子表达式:若公共子表达式的结果不大,则预先计算,以后可读入此结果,节时多,尤其是当视图情况下有用。
欢迎纠错,不喜勿喷
上一篇: 清朝后宫嫔妃们一年究竟能拿到多少钱?
下一篇: 龙利鱼