web-dev-qa-db-ja.com

OracleデータベースからのSSISデータの読み込みを高速化する方法

SSISパッケージを使用して、別の国のOracleサーバーからデータをロードする必要があります。 SSDTでOracleドライバー、環境変数、接続を構成済みです。約200 MBのデータ(1つのテーブル)をロードしていますが、約20分かかります。データをロードします。リモートロケーションのリンクは15Mbpsで、遅延は86msです。 OracleまたはSSISパッケージを構成して負荷を高速化する方法はありますか?

FetchSize接続文字列プロパティを使用すると、パフォーマンスが大幅に向上するはずです。最大値に関するOracleのドキュメントは here です。

FetchSize-プロバイダーが一度にフェッチする行数(フェッチ配列)を指定します。ネットワークのデータサイズや応答時間に応じて適切に設定する必要があります。値の設定が高すぎると、クエリの実行中に待機時間が長くなる可能性があります。値の設定が低すぎると、データベースへのラウンドトリップがさらに増える可能性があります。有効な値は1〜429,496,296です。デフォルトは100です。

ただし、主にSSIS Enterpriseエディションにアップグレードし、これを使用することをお勧めします コネクタ 。こちらがSSIS 2014用のものですが、他のバージョンも簡単に検索できます。そのコネクタのパフォーマンスは大幅に改善されています。

2
GregGalloway