什么是查询优化器?查询优化器所承担的主要任务是什么?

题目
问答题
什么是查询优化器?查询优化器所承担的主要任务是什么?
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

利用关系代数等价变化不一定能把非优化的查询表达式变换成优化的查询表达式。()


参考答案:错误

第2题:

关系系统的查询优化是一项非常主要的工作,一个优化的查询执行起来不仅可以节省时间,也可以节省空间,进而提高工作效率。针对关系系统的查询优化,试回答以下问题:

1.查询优化的总体目标?

2.查询优化的一般策略?

3.查询优化的一般步骤?


正确答案:1.查询优化的总体目标:选择有效策略求得给定关系表达式的值。 2.查询优化的一般策略: (1)选择运算应尽可能先做。在优化策略中这是最重要、最基本的一条。 (2)在执行链接前对文件进行预处理处理方法主要有两种:对文件排序和在链接属 性上建立索引。 (3)把投影运算和选择运算同时进行。如有若干个投影和选择运算并且他们都对同一 个运算操作这可以在扫描此关系的同时完成所有的这些运算以避免重复扫描关系。 (4)把投影同前或后的双目运算结合起来没有必要去掉一些字段而扫描一次关系。 (5)把某些选择同在它前面执行的笛卡儿积结合起来成为一个链接运算。 (6)造出公共子表达式。如果这种重复出现的子表达式的结果不是很大的关系并且从 外存中读入的这个关系比计算子表达式的时间少得多则先计算第一次公共子表达式并把结 果写入中间文件当查询的是视图时定义视图的表达式就是公共子表达式的情况。 3.查询优化的一般步骤: (1)把查询转化成某种内部表示。通常的内部表示是语法树。 (2)把语法树转换成标准形式(优化)。利用优化算法把原始的语法树转换成优化形式。 (3)选择低层的存取路径。 (4)生成查询计划选择代价最小的。
1.查询优化的总体目标:选择有效策略,求得给定关系表达式的值。 2.查询优化的一般策略: (1)选择运算应尽可能先做。在优化策略中,这是最重要、最基本的一条。 (2)在执行链接前,对文件进行预处理,处理方法主要有两种:对文件排序和在链接属 性上建立索引。 (3)把投影运算和选择运算同时进行。如有若干个投影和选择运算,并且他们都对同一 个运算操作,这可以在扫描此关系的同时,完成所有的这些运算以避免重复扫描关系。 (4)把投影同前或后的双目运算结合起来,没有必要去掉一些字段而扫描一次关系。 (5)把某些选择同在它前面执行的笛卡儿积结合起来成为一个链接运算。 (6)造出公共子表达式。如果这种重复出现的子表达式的结果不是很大的关系,并且从 外存中读入的这个关系比计算子表达式的时间少得多,则先计算第一次公共子表达式并把结 果写入中间文件,当查询的是视图时,定义视图的表达式就是公共子表达式的情况。 3.查询优化的一般步骤: (1)把查询转化成某种内部表示。通常的内部表示是语法树。 (2)把语法树转换成标准形式(优化)。利用优化算法,把原始的语法树转换成优化形式。 (3)选择低层的存取路径。 (4)生成查询计划,选择代价最小的。

第3题:

在分布式数据库中,查询处理和优化比集中式数据库要复杂得多,其中的查询优化需要考虑的主要因素包括I/O代价、CPU代价和通信代价。一般而言,分布式数据库查询优化的首要目标是

A.使查询执行时I/O代价最省

B.使查询执行时CPU代价最省

C.使查询执行时通信代价最省

D.使查询执行时I/O代价和CPU代价之和最省


正确答案:C

第4题:

DBMS为用户查询选择一个合适的执行策略的过程称为查询优化。()


答案:对
解析:
数据库中的查询优化就是通过DBMS为查询选择一个合适的执行策略,以提高查询效率。

第5题:

数据库查询优化:


正确答案:
1、多态性,多种数据库兼容;
2、支持翻页,支持查询总数,页码显示;
3、能处理100万以上数据量;

第6题:

RDBMS查询处理阶段包括()

A 查询分析

B 查询检查

C 查询优化

D 查询执行


参考答案ABCD

第7题:

关系系统的查询优化是一项非常主要的工作,一千优化的查询执行起来不仅可以节省时间,也可以节省空间,进而提高工作效率。针对关系系统的查询优化,试回答以下问题:

(1)查询优化的总体目标。

(2)查询优化的一般策略。

(3)查询优化的一般步骤。


正确答案:(1)查询优化的总体目标是:选择有效的策略求得给定的关系表达式的值。 (2)查询优化的一般策略: ①选择运算应尽可能先做。在优化策略中这是最重要、最基本的一条。 ②在执行联接前对文件适当地预处理。预处理方法主要有两种对文件排序和在联接属性上建立索引。 ③把投影运算和选择运算同时进行。如有若干投影和选择运算并且它们都对同一个关系操作则可以在扫描此关系的同时完成所有的这些运算以避免重复扫描关系。 ④把投影同其前或后的双目运算结合起来没有必要为了去掉某些字段而扫描一遍关系。 ⑤把某些选择同在它前面要执行的笛卡尔积结合起来成为一个联接运算。 ⑥找出公共子表达式。如果这种重复出现的子表达式的结果不是很大的关系并且从外存中读人这个关系比计算该子表达式的时间少得多则先计算一次公共子表达式并把结果写入中间文件是合算的。当查询的是视图时定义视图的表达式就是公共子表达式的情况。 (3)查询优化的一般步骤: ①把查询转换成某种内部表示。通常用的内部表示是语法树。 ②把语法树转换成标准(优化)形式。利用优化算法把原始的语法树转换成优化的形式。 ③选择低层的存取路径。根据优化了的语法树计算关系表达式值的时候要充分考虑索引、数据的存储分布等存取路径利用它们进一步改善查询效率。这就要求优化器去查找数据字典获得当前数据库状态的信息。例如选择字段上是否有索引联接的两个表是否有序联接字段上是否有索引等等然后根据一定的优化规则选择存取路径。 ④生成查询计划选择代价最小的。查询计划是由一组内部过程组成的这组内部过程实现按某条存取路径计算关系表达式的值通常有多个查询计划可供选择。对不同的查询计划计算代价选择代价最小的一个。
(1)查询优化的总体目标是:选择有效的策略,求得给定的关系表达式的值。 (2)查询优化的一般策略: ①选择运算应尽可能先做。在优化策略中这是最重要、最基本的一条。 ②在执行联接前对文件适当地预处理。预处理方法主要有两种,对文件排序和在联接属性上建立索引。 ③把投影运算和选择运算同时进行。如有若干投影和选择运算,并且它们都对同一个关系操作,则可以在扫描此关系的同时完成所有的这些运算以避免重复扫描关系。 ④把投影同其前或后的双目运算结合起来,没有必要为了去掉某些字段而扫描一遍关系。 ⑤把某些选择同在它前面要执行的笛卡尔积结合起来成为一个联接运算。 ⑥找出公共子表达式。如果这种重复出现的子表达式的结果不是很大的关系,并且从外存中读人这个关系比计算该子表达式的时间少得多,则先计算一次公共子表达式并把结果写入中间文件是合算的。当查询的是视图时,定义视图的表达式就是公共子表达式的情况。 (3)查询优化的一般步骤: ①把查询转换成某种内部表示。通常用的内部表示是语法树。 ②把语法树转换成标准(优化)形式。利用优化算法,把原始的语法树转换成优化的形式。 ③选择低层的存取路径。根据优化了的语法树计算关系表达式值的时候要充分考虑索引、数据的存储分布等存取路径,利用它们进一步改善查询效率。这就要求优化器去查找数据字典,获得当前数据库状态的信息。例如选择字段上是否有索引,联接的两个表是否有序,联接字段上是否有索引等等,然后根据一定的优化规则选择存取路径。 ④生成查询计划,选择代价最小的。查询计划是由一组内部过程组成的,这组内部过程实现按某条存取路径计算关系表达式的值,通常有多个查询计划可供选择。对不同的查询计划计算代价,选择代价最小的一个。

第8题:

请根据如下查询语句,回答问题(d),(e)和(f)。

SELECT客户号

FROM订单,订单明细

WHERE订单明细.订单号=订单.订单号AND

产品号='02' AND

数量>10;

(d) 上述查询语句的功能是什么?请简要回答。(30个字以内)

(e) 将上述查询语句转换成对应的关系代数表达式。

(f) 上述SQL查询语句是否可以进一步优化?如可以,给出优化后的SQL查询语句。


正确答案:查询一次订购(或购买)产品号为02的数量大于10的客户号 (e) (f)可以优化。优化的SQL语句为: SELECT客户号 FROM 订单 WHERE 订单号 IN (SELECT 订单号 FROM 订单明细 WHERE产品号='02' AND数量>10);
查询一次订购(或购买)产品号为02的数量大于10的客户号 (e) (f)可以优化。优化的SQL语句为: SELECT客户号 FROM 订单 WHERE 订单号 IN (SELECT 订单号 FROM 订单明细 WHERE产品号='02' AND数量>10); 解析:本题考核的知识点包括SQL的查询命令与关系代数表达式的互相转换以及SQL的查询优化。
SELECT语句的功能是:查询一次订购(或购买)产品号为02的数量大于10的客户号。
根据关系代数表达式的定义,将上述查询语句转换成对应的关系代数表达式为:

该SELECT语句,在进行多表查询时,采用的是相关子查询。由于相关子查询查询时要做连接JOIN,性能不是最优。可以考虑采用不相关子查询,来提高性能。优化的 SQL语句为:
SELECT客户号
FROM订单
WHERE订单号IN
(SELECT订单号
FROM订单明细
WHERE产品号='02' AND数量>10);

第9题:

查询优化是指系统对关系代数表达式进行优化组合,它的目的是___________.


正确答案:
提高系统效率

第10题:

查询优化和数据挖掘的概念。


正确答案:查询优化:基于数据集的特点对查询中的操作进行排序,为每一步操作选择有效策略数据挖掘:即进行系统的搜索,找出隐藏在电子信息中潜在的有用信息。