私の ETL プロセスでは、変更データ キャプチャ (CDC) を使用して、最後の抽出以降にソース テーブルで変更された行のみを検出しています。次に、この行に対してのみ変換を行います。問題は、たとえば、1 つのディメンションに結合したい 2 つのテーブルがあり、そのうちの 1 つだけが変更された場合です。たとえば、次のような国と町のテーブルがあります。
国:
ID Name
1 France
町:
ID Name Country_ID
1 Lyon 1
ここで、Towns テーブルに新しい行が追加されたとします。
ID Name Country_ID
1 Lyon 1
2 Paris 2
Countries テーブルは変更されていないため、これらのテーブルの CDC には、Towns テーブルの行のみが表示されます。問題は、Countries と Towns の間で結合を行うと、Countries 変更セットに行がないため、結合によって空のセットが生じることです。
それを解決する方法はありますか?もちろん、3 つ以上のテーブルと結果結合を含む、より困難なケースがあるかもしれません。