1

次の設計の SSIS パッケージがあります。

  1. パッケージには、同じテーブルからデータを読み取り、20 の異なるテーブルに読み込む 20 のデータ フロー タスクがあります。
  2. MaxConcurrentExecutable は 6 に設定されているため、6 つのタスクを並行して実行します。
  3. RetainSameConnection が true に設定されているすべてのソース コンポーネントに対して単一の接続マネージャーがあります。
  4. それぞれの宛先で使用される 20 の追加の接続マネージャーがあります。
  5. ソースと宛先は同じ SQL Server データベース上にあります。SSIS は別のサーバーで実行されます。データベースと SSIS サーバーはどちらも 4cpu と 8gb RAM です。

これは非常にゆっくりと実行されています。sp_who2 を見ると、ソースから読み取る選択クエリ (spid) が中断され、それ自体がブロックされることがあり、宛先への一括挿入を行う spid がコマンドを待機していることに気付きます。

なぜこれが起こっているのか誰にも教えてもらえますか?これを最適化するにはどこを調べる必要がありますか (データベースのパフォーマンス、ハードウェアなど)?

私はあなたの助けに感謝します。ありがとう!

4

0 に答える 0