Data Integration では、バッチ同期ノードにフィルター条件を指定して、ノードが増分データのみを同期できるようにすることができます。バッチ同期ノードを設定する際にフィルター条件を指定すると、フィルター条件を満たすデータのみが同期されます。フィルター条件は、スケジューリングパラメーターと一緒に使用できます。このようにして、フィルター条件はスケジューリングパラメーターの設定によって動的に変化し、増分データを同期できます。このトピックでは、増分データのみを同期するようにバッチ同期ノードを設定する方法について説明します。
使用上の注意
HBase データソースや OTSStream データソースなど、一部の種類のデータソースでは増分同期はサポートされていません。関連するデータソースの Reader プラグインを紹介するトピックを参照して、増分同期がサポートされているかどうかを確認できます。
設定する必要があるパラメーターは、増分データの同期に使用する Reader プラグインによって異なります。詳細については、「サポートされているデータソースの種類と同期操作」をご参照ください。次の表に例を示します。
Reader プラグイン
増分同期に必要なパラメーター
サポートされている構文
where
説明コードレス UI を使用して MySQL Reader を使用するバッチ同期ノードを設定する場合は、フィルター パラメーターを設定する必要があります。
関連データベースの構文を使用します。
説明フィルター条件をスケジューリングパラメーターと共に使用して、毎日指定された期間に生成されたデータを読み取ることができます。
query
説明コードレス UI を使用して MongoDB Reader を使用するバッチ同期ノードを設定する場合は、検索条件 パラメーターを設定する必要があります。
関連データベースの構文を使用します。
説明フィルター条件をスケジューリングパラメーターと共に使用して、毎日指定された期間に生成されたデータを読み取ることができます。
オブジェクト
オブジェクトパスを指定します。
説明フィルター条件をスケジューリングパラメーターと共に使用して、毎日指定されたオブジェクトからデータを読み取ることができます。
...
...
...
増分データのみを同期するようにバッチ同期ノードを設定する
バッチ同期ノードを使用してデータを同期する場合、ノードのスケジューリングパラメーターを設定して、同期するデータのパスと範囲、およびデータを書き込む場所を指定できます。バッチ同期ノードのスケジューリングパラメーターを設定するために使用される方法は、他のタイプのノードのスケジューリングパラメーターを設定するために使用される方法と同じです。
バッチ同期ノードが実行されると、ノードに設定されたスケジューリングパラメーターは、スケジューリングパラメーターの値の形式に基づいて実際の値に置き換えられます。次に、バッチ同期ノードは、値に基づいてデータを同期します。
このセクションの例では、MySQL データソースからデータを同期するようにバッチ同期ノードが設定されています。
ノードを設定する際に [フィルター条件] を指定しない場合、ノードはソースから宛先へのすべてのデータを自動的に同期します。
ノードを設定する際に [フィルター条件] を指定した場合、ノードはフィルター条件を満たすデータのみを宛先に同期します。
データが書き込まれる宛先 MaxCompute テーブルのパーティションも、スケジューリングパラメーターによって指定されます。$bizdate は、ノードのデータタイムスタンプを指定します。ノードが実行されると、ノードに設定されたパーティションフィルター式は、スケジューリングパラメーターで指定されたデータタイムスタンプに置き換えられます。スケジューリングパラメーターの設定方法と使用方法については、「スケジューリングパラメーターの設定と使用」をご参照ください。
増分データのみを同期するようにバッチ同期ノードを設定する前に、次の点に注意してください。
時間データ型の増分データを同期する場合、ノードのフィルター条件を指定するときにスケジューリングパラメーターを使用できます。このようにして、ノードがスケジュールされると、スケジューリングパラメーターはノードのデータタイムスタンプに基づいて実際の値に置き換えられます。スケジューリングパラメーターの詳細については、「スケジューリングパラメーターのサポートされている形式」をご参照ください。
時間以外のデータ型の増分データを同期する場合は、割り当てノードを使用してソースフィールドのデータ型を宛先でサポートされているデータ型に変換し、処理されたデータを Data Integration に送信してデータ同期を実行できます。割り当てノードの使用方法の詳細については、「割り当てノードの設定」をご参照ください。
サンプルシナリオ
履歴増分データを同期する: ソーステーブルから宛先テーブルの関連する時間パーティションに履歴増分データを同期する場合は、オペレーションセンターで提供されているデータバックフィル機能を使用できます。データバックフィル機能の詳細については、「データのバックフィルとデータバックフィルインスタンスの表示 (新バージョン)」をご参照ください。