0

ssis Dataflow には、1,800 万件のレコードを含むテーブルを検索するルックアップ コンポーネントがあります。フル キャッシュを使用してルックアップを構成しました。

   Default buffer size :20485760 
Default Buffer Max rows: 100000 
The lookup join is based on an ID column of varchar(13)type

以下に示すようなエラーが発生します。これらの多くのレコードをキャッシュするのに適したルックアップ構成は何ですか

Error: The buffer manager cannot write 8 bytes to file "C:\Users\usrname\AppData\Local\Temp\16\DTS{B98CD347-1EF1-4BC1-9DD9-C1B3AB2B8D73}.tmp". There was insufficient disk space or quota.

キャッシュなしでルックアップを使用すると、パフォーマンスにどのような違いがありますか? フル キャッシュ モードでは、データは実行前の段階の前にキャッシュされ、データベースに戻る必要がないことを理解しました。このフル キャッシュ メモリは大量のメモリを消費し、データ フローの起動時間を追加します。私の質問は何ですかフルキャッシュモードで大量のデータを処理するために設定する必要がありますか?

ルックアップ テーブルに 100 万件のレコードがあり、フル キャッシュに収まらない場合の解決策は何ですか?

4

2 に答える 2

0

代わりにマージ結合コンポーネントを使用してください。結合キーで両方の入力を並べ替え、仕様に基づいて内部/左/完全結合を指定します。さまざまな出力を使用して、ルックアップ コンポーネントなどの機能を取得します。

通常、マージ結合は、より大きなデータセットでより適切に実行されます。

于 2014-03-12T12:02:57.870 に答える
0

Blobtempstoragepath および buffertempstoragepath はtempおよびtmpシステム変数を使用するため、SSIS の Buffertempstoragepath プロパティを一部の高速ドライブに設定できます。したがって、tmp 変数が大規模なデータセットを保持できない場合は、ルックアップ変換を使用します。したがって、大きなデータセットはドライブ スペースを使用し、ジョブを実行します。

于 2015-02-25T15:48:01.147 に答える