gpt4 book ai didi

sql-server - SQL Server(Azure Synapse)的估计执行计划中的这些不同属性意味着什么?

转载 作者:行者123 更新时间:2023-12-03 04:54:38 26 4
gpt4 key购买 nike

我正在尝试处理统计数据,作为其中的一部分,我正在尝试查看特定列上具有 WHERE 条件的某些 SELECT * 命令的执行计划。

我不断得到的是以下字段(示例输出):

enter image description here

我真的不知道这些属性是什么意思。我试图在这些结果中执行统计更新前和统计更新后的差异,但我没有看到太大的变化。

有人可以在这里说明一下吗?对理解这些信息非常有帮助。

最佳答案

优化器使用统计信息和行计数来估计查询树中每个运算符将消耗和生成的行数。像这样一个简单的叶子Get,估计会执行1次,会返回13.2M行。行宽估计为2544B。如果您的 Get 位于嵌套循环连接的内部(可能还有另一个 Get 在外部),那么您可以获得内表的多次扫描,并且估计执行次数可能 > 1。然后也会显示所有执行的估计行数是 13.2M 数字的倍数。在这种情况下,I/O 成本为零,但它们代表扫描成本,可帮助优化器在搜索计划空间期间将此路径与其他路径进行比较。

对于普通用户,检查更新/更好的统计信息是否有助于您的查询的方法是尝试使用“设置统计配置文件”运行查询(注意:它有一点开销,所以不要除非需要在更新统计数据之前和之后手动进行验证,否则像这样运行。然后,您可以查看每个运算符(operator)的实际行数与估计行数,看看情况是否有所改善。此外,查询存储将记录运行时信息(尽管不是每个运算符(operator)的信息),这可以为您提供整个工作负载的执行情况摘要。

关于sql-server - SQL Server(Azure Synapse)的估计执行计划中的这些不同属性意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72028274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com