BIDS 的 async_network_io 问题

JHF*_*HFB 3 sql-server-2008 ssrs wait-types

这与我之前的问题有关BIDS 和 SSRS Web Portal 中的运行时截然不同

我正在努力刷新 BIDS 中的一些报告,因为它们永远运行。我现在注意到,当我在 BIDS 中刷新报告时,查询将遇到 ASYNC_NETWORK_IO 等待。(也是 CXPACKET,但我明白这与其说是原因,不如说是结果)

帖子需要 ASYNC_NETWORK_IO 的帮助似乎表明 SQL Server 正在等待客户端,我假设在这种情况下是我桌面上的 BIDS。

如果可以从这个信息片段中识别出来,那么问题出在哪里?是我的桌面和它缺乏魅力吗?会不会是网络?我的报表是否在报表端做了太多计算?我还应该看哪里?我该如何解决?

我要补充的是,数据通常永远不会完全返回。相反,我收到以下(冗余)错误消息:

本地报告处理期间发生错误。报告处理期间发生错误。抛出了“System.OutOfMemoryException”类型的异常。

Bre*_*zar 6

我们实际上在 StackOverflow 上遇到了一个类似的问题,Kyle 写了一篇关于它的博客:

http://blog.serverfault.com/2011/03/16/views-of-the-same-problem-network-admin-dba-and-developer/

问题可能有很多方面:

  • 带回太多数据的查询(例如从包含大量 XML 或二进制字段的宽表中选择 *)
  • 客户端应用程序逐行处理数据,而不是将其全部拉入内存然后做任何必要的工作
  • 正在分页到磁盘或在 CPU 上搅动的动力不足的应用服务器硬件(或在您的情况下是客户端计算机)。我在过度使用的虚拟机上经常看到这种情况。

要调整它,首先查看您自己机器上的 Perfmon 计数器。我的教程位于http://www.BrentOzar.com/go/perfmon,其中包括要收集的计数器列表、如何分析它们以及如何解释瓶颈。