これのトラブルシューティングに何時間も費やしましたが、新しい視点が必要です。. .
SSRS には比較的単純なレポート設定があり、上部に列があり、データ ポイントが下にある単純なマトリックスです。レポートの背後にある SQL クエリは「中程度」の複雑さです。いくつかのサブクエリといくつかの結合がありますが、それほどおかしなことはありません。
レポートは何ヶ月もうまく機能していましたが、最近は本当に遅くなりました。たとえば、レポートの生成に 15 ~ 20 分かかります。Report Designer から SQL Mgmt Studio に SQL クエリをクリップ アンド ペーストし、必要な変数を置き換えると、2 秒以内に結果が返されます。SQLプロファイラーを使用して、SSRSが実行している正確なクエリを取得し、これをクリップしてMgmt Studioに貼り付けましたが、それでも同じで、1秒未満の結果でした. 指定されたパラメーターと日付範囲に違いはありません。小さなデータセット (< 100 行) または巨大なデータセット (> 10,000 行) を返すようにパラメーターを設定しても、同じ結果が得られます。Mgmt Studio では超高速ですが、SSRS レポートの生成には 20 分かかります。
これまでに試みたトラブルシューティング: SSRS でレポートを削除して再展開しました。複数のマシンと SSRS サーバーの Visual Studio IDE でテストし、同じ速度 (約 20 分) でテストしました。 Mgmt Studio -- Mgmt Studio で高速に実行 (< 2 秒) レポートの実行中にサーバーのパフォーマンスを監視しました。プロセッサは 20 分間のレポート生成中にかなりの負荷がかかり、ディスク I/O はベースラインをわずかに上回っています