の最適化に取り組んでdata flow task
います。どのコンポーネントにどれだけの時間がかかるかがわかると思いました。私はこれらのタスクを得ました:
それぞれの所要時間はどのように確認すればよいですか?メモリ、CPU などの他のリソースについて知ることができれば、それは素晴らしいことです。
主に、各コンポーネントにかかった時間を調べています。
の最適化に取り組んでdata flow task
います。どのコンポーネントにどれだけの時間がかかるかがわかると思いました。私はこれらのタスクを得ました:
それぞれの所要時間はどのように確認すればよいですか?メモリ、CPU などの他のリソースについて知ることができれば、それは素晴らしいことです。
主に、各コンポーネントにかかった時間を調べています。
経過時間を簡単に確認するには、[実行結果] タブを参照してください。タスク/コンポーネントの開始時と終了時に経過時間が表示されます。
また
データ フロー エンジンのパフォーマンスの監視 これは少し複雑で、実行すると PC の速度が低下します。YMMV。
また、SSIS には、何かのトラブルシューティングが必要な場合に備えて、エラー、情報、およびその他の無数のイベントの非常に優れたログ メカニズムが含まれています。
メニューから SSIS、Logging... を選択します。
プロバイダーを指定する必要があります。コツをつかむまでシンプルに保つために、テキスト ファイル用の SSIS ログ プロバイダーをお勧めします。これは CSV 形式で、返される情報をカスタマイズできます。
パッケージ内のすべてのコンポーネントを監視するには: [詳細] タブをクリックし、billinkc の提案に従って OnInformation および OnPipelineRowsSent を選択します。Logging はトラブルシューティングに役立ちますが、OnPipelineRowsSent は冗長であるため、本番環境にデプロイするときにログからそのイベントを削除して、書き込み時間とログ サイズを減らすことをお勧めします。
特定のタスクのみを監視するには: パッケージのチェックを外し、監視するパッケージ ツリー ビューからデータ フロー タスク/コンポーネントをチェックします。それを選択したら、OnInformation (およびbillinkcによって提案されたOnPipelineRowsSent) でログに記録するイベントを選択します。
データ フロー上のコンポーネント間のタイミングを判断したい場合は、ネイティブ ロギングを使用してOnPipelineRowsSent
イベントをキャプチャします。これは、変換間で移動した行数を示します。James はsqlteamで良いクエリと記事を書いています。
注意すべきことの 1 つは、パッケージにデータ フローが存在するまで OnPipelineRowsSent イベントをログに記録できないことです。テンプレート パッケージを作成する立場からすると、それは残念なことだと常々感じていました。