挿入/更新ステップとは別に、SCD タイプ 1 を維持するステップまたはロジックはありますか。大きなデータに対してこれを維持するには、膨大な時間がかかります。これは、取得しているテーブルから max(update time) を取得し、その更新日以降のデータを取得して、挿入/更新のビジネス キーに基づいてターゲット テーブルに単純に挿入する簡単な手順です。詳しい説明助かります
質問する
443 次
1 に答える
4
純粋な寸法管理の場合は、コンビネーション ルックアップ/更新またはディメンション ルックアップ/更新を使用できます (更新タイプ = 更新またはパンチ スルーの場合、SCD タイプ I として動作します)。
ただし、それらには常に同じ問題があります。DB への往復で速度が低下します。キャッシュによっていくらか軽減されますが、必要な更新の数によっては十分ではない場合があります。
もう 1 つの方法は、次のトリックを使用してテーブル出力 + 更新ステップの組み合わせを使用することです。
- SCD のキーであるフィールドの一意のインデックスを DB に作成します。
- テーブル出力ステップを使用してすべてのレコードを挿入してみてください。DB に既に存在する行は拒否されます。
- テーブル出力の後に Update ステップを追加しますが、「ステップのメイン出力」であるブラック ホップに接続する代わりに、エラー処理のレッド ホップを介して接続します。
DB に存在しない行は、ルックアップを行わずにテーブル出力によって挿入されます。失敗したもの (既に存在するため) は、更新ステップに送られます。
于 2014-12-20T10:56:35.113 に答える