このステップでは、ソースデータベーステーブルから変更のみを読み取り、それらをHive外部テーブルemployee_extnlにロードします。
手順
-
ビッグデータバッチジョブは次のとおりです。
- ソーステーブルは、cdc_controlテーブルで維持されている最後にアップデートされたタイムスタンプによってフィルタリングされます。これは、tmysqlInputコンポーネントのWhere条件でこのSQLを使用することによって行われます。
ここで、cdc.Table_Name='employee_table'およびemp.`Record_DateTime`> cdc.Last_executed"となります。
- tAggregateRowは、実行のたびに1行をcdc_controlテーブルにロードします。テーブルに対してupdate else insert操作を実行します。テーブルのレコードが既に存在する場合は、ジョブの実行時にレコードがアップデートされます。
ランタイムはTalendDate.getCurrentDate()関数を使用して設定できます。
以下は、新しいレコードが追加された後のソースemployee_tableテーブルのデータを示しています。 - ソーステーブルは、cdc_controlテーブルで維持されている最後にアップデートされたタイムスタンプによってフィルタリングされます。これは、tmysqlInputコンポーネントのWhere条件でこのSQLを使用することによって行われます。
-
ジョブを実行します。
以下に、ジョブ実行後のemployee_extnl外部Hiveテーブル内のデータを示します。