全部產品
Search
文件中心

DataWorks:即時同步欄位格式

更新時間:Jun 08, 2024

本文為您介紹Data Integration即時同步欄位的格式及附加列。

Data Integration即時同步MySQL或Oracle資料的記錄格式如下。

_sequence_id_

_operation_type_

_execute_time_

_before_image_

_after_image_

欄位1

欄位2

欄位3

增量事件的記錄 ID,值唯一且遞增。

操作類型(I/D/U)

資料對應的時間戳記

是否是變更前(Y/N)

是否是變更後(Y/N)

真實資料欄位1

真實資料欄位2

真實資料欄位3

Data Integration即時同步在同步MySQL、Oracle、Loghub和PolarDB類型的資料至DataHub或Kafka時,會在同步的目標端添加5個附加列,以進行中繼資料管理、排序去重等操作。

參數

類型

描述

_sequence_id_

STRING

自增ID,用於做全增量Merge。

_operation_type_

STRING

操作類型,取值分別如下:

  • I:INSERT操作

  • D:DELETE操作

  • U:UPDATE操作

_execute_time_

LONG

資料產生時間戳記,即binlog時間戳記。

_before_image_

STRING

是否更新前的記錄,取值為Y或N。

_after_image_

STRING

是否更新後的記錄,取值為Y或N。

對於INSERT、UPDATE和DELETE等不同的操作類型,增量資料記錄中的_before_image__after_image_定義如下:

  • 當操作類型為INSERT時,產生的記錄為更新後的記錄,_before_image_取值為N,_after_image_取值為Y。

  • 當操作類型為UPDATE時,Data Integration會將其拆分為兩條記錄。一條是更新前記錄,一條是更新後記錄。這兩條增量資料的_sequence_id__operation_type__execute_time_對應的值一致。

    第一條增量資料是更新前的值,所以_before_image_取值為Y,_after_image_取值為N。第二條增量資料是更新後的值,所以_before_image_取值為N,_after_image_取值為Y。

  • 當操作類型為DELETE時,增量資料中為已經刪除的資料,所以_before_image_取值為Y,_after_image_取值為N。