1

単一のフラット ファイルからデータを抽出し、それを SQL Server の宛先にロードするパッケージを実行しています。フラット ファイルに 10,000 行を超える (毎日変更されます)

タスクの完了率を確認する方法はありますか? 開発者/サポート チームがインスタンスのテーブルで select ステートメントを実行するときのように

Select percentComplete from PackagePerformance Where packageId = 12

次のような出力が得られます。

60%

これは、このインスタンスでデータの 60% が SQL テーブルにロードされることを意味します。

なにか提案を?

4

1 に答える 1

0

そのため、SSIS はファイル内のレコード数を認識していないため、パッケージが完成にどれだけ近づいているかを実際に誰にも伝えることはできません。それは、完全に読み込まれて初めてわかります。

ここに私が考えているいくつかのことがあります

1) 進行状況インジケーターを書き出す場合は、データフローでスクリプト変換を使用します。データベース コネクタなどのスクリプトを作成する必要があります。Google があなたの味方になります。1000 レコードごとにインジケーターを書き出すことができます。

1) 本当にパーセンテージを完了したい場合は、ファイルを一度完全に読み込みます。(スクリプト タスクに読み込むだけです) 非常に高速で、レコード カウントが得られます。

2) 使用しているインポート テーブルを確認します。10,000 行は実際にはそれほど多くありません。1,000,000 をはるかに超えるファイルを 60 秒未満でインポートしています。ただし、データフローで一連の変換も使用していません。それはあなたの問題の1つかもしれません。

于 2012-06-19T04:44:30.693 に答える