2016-10-13 9 views
0

OLTPデータベース(これはETLの一部です)からOPENQUERYまたはSSISデータフローを介して別のSQL Serverデータベース(このSSISパッケージ/ OPENQUERYステートメントを実行するWarehouse)にデータをロードすると、私がパフォーマンスモニタをチェックしたとき、私は運命からではなくソースデータベースからリソースを使用します。 SQL Server 2016またはSSISを使用して、このリソースの使用率を元に戻すことはできますか?データベースからデータをプッシュする代わりに

+0

「殺す」とはどういう意味ですか?問題を技術的に説明できますか?あるシステムから別のシステムにデータを転送する場合は、両方のシステムでリソースを使用する必要があります。 –

答えて

2

ここで問題となるのは、宛先書き込み操作です。高速ロード・アクセス・モードでOLE DB宛先を使用している場合は、バッチごとのローを0以外の値に設定して、最大インサート・コミット・サイズをメモリおよびCPUで簡単にできる値に減らしてください。 SSISはデスティネーションテーブルに書き込む前にデフォルトの2147483647を待つ必要はなく、ログファイルに大きな影響を与えてプロセスの処理速度を低下させる可能性があります。この値の設定の詳細については、Articleを参照してください。すべてのベスト

enter image description here

+0

私は宛先サーバー(SSISインスタンスを持つウェアハウス)のパフォーマンスに問題はありませんが、ソースサーバー(OLTP)は問題ありません。私は、宛先サーバを優先してリソース使用を減らす方法を探しています。 – Testtest11

0

がどのようにエクスポートクエリのように見えるのでしょうか?単純なデータダンプであるか、複雑なロジックを持っていますか(たとえば、エクスポートで非正規化/集約を行うなど)

単純なエクスポートの場合は、SSISパッケージが実行されているサーバーとそのリソースを確認します。いずれにしても、ソースシステムからデータを読み取る必要があります。そのため、ディスクの読み取り操作が必要になる場合があります。

一般に、可能な限り迅速にOLTPからデータを取得し、ETL /データウェアハウス・サーバー上のETLプロセスの後続のステップで他の操作を適用する方が適しています。トランザクションシステムへの影響を減らすため。

希望します。

関連する問題