达梦数据库-查询优化-各种可能加快查询的方式方法。

本文介绍了达梦数据库的查询优化技巧,包括查询优化器如何选择最优执行计划、连接查询的考虑因素、统计信息对优化的影响、索引的类型与作用,以及并行查询和执行计划重用的概念,旨在提升查询效率。
摘要由CSDN通过智能技术生成

查询优化器       

       查询优化器通过分析可用的执行方式和查询所涉及的对象统计信息来生成最优的执行计划。 访问路径指从数据库中检索数据的方法。查询优化器选择访问路径基于以下几个因素: 1. 执行语句中可能的访问路径;2. 估算每条执行路径的代价。为了选择一个访问路径,优化器首先会通过检查语句中的 FROM 子句和 WHERE 子句中的条件表达式来决定哪一个访问路径可以使用。优化器会根据可用的访问路径生成可能的执行计划集合,然后使用索引、列和表的统计信息来估算每个计划的代价。最后,优化器选择最小代价的那个执行计划。影响优化器选择访问路径的因素有语句中的提示(HINT)和统计信息。用户可以在执行的语句中使用 HINT 来指定访问路径。而统计信息会根据表中数据的分布情况决定采用哪个访问路径会产生最小的代价。

连接

查询语句中 FROM 子句包含多个表时,我们称为连接查询。生成连接查询的执行计划,需要考虑三方面因素:访问路径,连接方式,连接顺序。

统计信息

      对象统计信息描述数据是如何在数据库中存储的。统计信息是优化器的代价计算的依据,可以帮助优化器较精确地估算成本,对执行计划的选择起着至关重要的作用。达梦数据库的统计信息分三种类型:表统计信息、列统计信息、索引统计信息。通过直方图来表示。

     在执行查询时,如果数据对象存在统计信息,代价算法可以根据统计信息中的数据,比较精确地计算出操作所需花费的成本,以此来确定连接方式、对象访问路径、连接顺序,选择最优的执行计划。用户也可以通过修改 OPTIMIZER_DYNAMIC_SAMPLING 参数值在缺乏统计信息时进行动态统计信息收集。

索引

索引是与表相关的可选的结构(聚簇索引除外),它能使对应于表的 SQL 语句执行得更快

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值