首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL server -高缓冲区IO和网络IO

SQL server -高缓冲区IO和网络IO
EN

Stack Overflow用户
提问于 2016-02-19 03:04:21
回答 2查看 4.6K关注 0票数 0

我有一个关于SQL服务器的性能调优问题。

我有一个程序,需要运行每个月,它需要超过24小时完成。我需要调整这个程序,希望我可以减少12小时或更短的运行时间。

由于这个程序不是由我们开发的,所以我不能检查程序内容并修改它。我所能做的就是打开SQL服务器探查器和活动监视器来跟踪和分析sql内容。我已经禁用了未使用的触发器,并做了一些内务管理,但运行时间只减少了1小时。

我发现网络I/O和缓冲区I/O都很高,但是我不知道这是什么原因和意义?

有人能告诉我这两个问题(网络I/O和黄油I/O)的原因吗?对优化这个程序有什么建议吗?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2016-02-19 03:19:23

  • 。根据你的描述,我认为你的I/O是正常的,你的问题只是一个:一个过程太慢了。 解决办法: 1.打开SSMS 2.寻找程序 3.单击名为“显示估计执行计划”的按钮 4.确定程序。
票数 0
EN

Stack Overflow用户

发布于 2016-02-19 18:32:39

在我看来,您的应用程序似乎将大量数据读入应用程序,这将解释这些数字。不过,我还是想看看以下几点:

  • 有阻塞吗?如果过程只是在等待其他事情的完成,那么这很容易就会浪费时间。根据您的统计数据,它看起来不像这样,但是检查仍然很重要。
  • 表的索引是否正确?匹配搜索条件/联接的良好索引。如果有大量的键查找,覆盖索引可能会产生很大的影响。过多的索引/不必要的索引会减慢更新速度。 您应该查看计划缓存,以查看负责大部分I/O或CPU使用的语句。
  • 对于最昂贵的操作,查询计划是否正确?您可能有过时的统计数据或其他优化问题。
  • 如果应用程序向和/或从数据库传输大量数据,网络延迟和带宽是否足够好,还是会导致缓慢?应用程序运行的服务器是否成为瓶颈?

如果这些都没有帮助,那么您可能应该发布一个包含详细信息的新问题:引起问题的SQL语句、包含行计数和查询计划的相关表的表和索引结构。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35496576

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档