実行時間フィールドのみを含むレポートを実行すると、SQL からの大規模な埋め込みデータセットがある場合は常に、レポートの読み込みに長い時間がかかることに気付きました。どうしてこれなの?レポートはデータセットからデータを探すことさえしていません。ロード時間は明らかにデータセット内のデータ量に比例します。データセットを作成するより良い方法はありますか? 一部のデータセットには数百万のレコードが含まれているため、SQL Report Builder はそのままでは使用できないようです。
2 に答える
4
レポートの生成には、次の3つの段階があります。
- データ検索
- 処理
- レンダリング
これらのステージは順番に実行されるため、データ取得ステージでは、Reporting Servicesはデータがレポートでどのように使用されるかを認識せず、レポート内のすべてのデータセットに対してクエリを実行します。次に、処理ステージはデータセットクエリの結果を取得し、テーブルやグループ化などのレポート構造をデータに適用します。
これが、レポートに実行時間フィールドのみが含まれているにもかかわらず、レポートがデータセットクエリを実行している理由です。また、データセットがレポートに必要なデータのみを返すようにすることが重要である理由でもあります。レポートのパフォーマンスを向上させるには、データ取得の量を最小限に抑えることが重要です。
于 2012-05-02T22:01:27.753 に答える
1
レポートに Tablix が含まれていないことを確認してください。Tablix にはデータセット プロパティがあり、たとえば、そのプロパティをデータセット 1 に設定してレポートを実行すると、SSRS はデータセット 1 に対してクエリを実行します。
于 2012-04-30T10:02:51.480 に答える