建立同步RDS/MySQL/ADS3.0
同步資料到RDS
準備工作
1.準備RDS執行個體和表結構使用RDS管控台建立RDS執行個體,可選擇傳統網路和VPC網路,同樣,建立DataHub同步任務時,請選擇正確的網路類型。DataHub同步時,會根據DataHub Field的資料類型同步到對應的RDS資料類型中,對應的類型映射關係如下所示:
|
DataHub |
RDS |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
DataHub 中的 TINYINT , SMALLINT , INTEGER , FLOAT 類型從 java sdk 2.16.1-public 開始支援。2.RDS白名單和內網地址使用者使用DataHub同步功能時,需要在RDS管控台中配置IP白名單以便DataHub服務訪問使用者RDS服務,DataHub服務對應的IP白名單地址域參考概述同樣,在建立DataHub同步任務時,使用者需要填寫RDS內網地址以確保網路連通性。
3.同步說明
-
目前DataHub僅支援將TUPLE資料同步到RDS服務中
-
DataHub中的TIMESTAMP預設按照
微秒(Microsecond)時間轉換成RDS TIMESTAMP類型,請使用者注意控制資料精度 -
為了避免並發讀寫同一個主鍵資料出現加鎖競爭,請使用者確保同一主鍵的資料寫入到DataHub同一Shard中
-
使用VPC網路時,請確保DataHub Topic和RDS執行個體在同一個Region
建立同步任務
-
依次進入
專案列表/Project詳情/Topic詳情頁面 -
點擊右上方的
+ 同步按鈕進行同步任務建立,彈出建立Connector對話方塊,需配置Host、Port(預設3306)、Database、Table、User、Password等串連資訊,以及寫入模式、匯入欄位、網路類型等同步參數。選擇VPC網路時還需填寫VPC ID和執行個體ID,設定起始時間和Timestamp Unit(預設MICROSECOND)後,單擊建立。
下面羅列了部分管控台建立同步任務的配置說明,更多更靈活的操作請參考SDK使用。
-
HostRDS服務地址,請務必填寫
內網地址以確保服務聯通性 -
匯入欄位DataHub可以根據使用者佈建將部分column內容同步到RDS表中
-
寫入模式包括IGNORE和OVERWRITE兩種模式
-
IGNORE: 忽略重複資料,即
INSERT IGNORE INTO寫入 -
OVERWRITE: 更新重複資料,即
REPLACE INTO寫入
-
-
VpcId和執行個體ID當使用者的RDS處於VPC網路時,需要填寫對應的VpcId資訊和RDS執行個體資訊
同步樣本
-
建立RDS執行個體和表結構在RDS管控台中建立RDS執行個體和資料表。樣本中資料表名為wurao_tuple_test_001,包含3個欄位:field1(varchar,長度255)、field2(bigint,長度20)和field3(double)。
-
建立DataHub Topic在DataHub中建立Topic,樣本中為TUPLE類型topic,schema包含3個欄位:field1(STRING)、field2(BIGINT)和field3(DOUBLE),均不允許為空白。
-
建立同步任務這裡寫入模式選擇IGNORE,匯入所有欄位,即field1、field2、field3,網路類型選擇CLASSIC,單擊建立完成配置。
-
向DataHub中寫入TUPLE資料,共4條資料。樣本資料中field1為f_1和f_2,field2為1和2,field3為1和2,兩組資料各重複一次。
-
確認同步資料這裡採用MySQL用戶端串連RDS服務查看資料,資料結果如下所示:
mysql> select * from xxx_e_test_001; +--------+--------+--------+ | field1 | field2 | field3 | +--------+--------+--------+ | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | +--------+--------+--------+ 4 rows in set (0.00 sec)
同步資料到MySQL
準備工作
1.準備MySQL執行個體和表結構使用MySQL管控台建立MySQL執行個體
DataHub同步時,會根據DataHub Field的資料類型同步到對應的MySQL資料類型中,對應的類型映射關係如下所示:
|
DataHub |
MySQL |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
DataHub 中的 TINYINT , SMALLINT , INTEGER , FLOAT 類型從 java sdk 2.16.1-public 開始支援。
2.同步說明1)目前DataHub僅支援將TUPLE資料同步到MySQL服務中2)DataHub中的TIMESTAMP預設按照微秒(Microsecond)時間轉換成MySQL TIMESTAMP類型,請使用者注意控制資料精度3)為了避免並發讀寫同一個主鍵資料出現加鎖競爭,請使用者確保同一主鍵的資料寫入到DataHub同一Shard中
建立同步任務
-
依次進入
專案列表/Project詳情/Topic詳情頁面 -
點擊右上方的
+ 同步按鈕進行同步任務建立
彈出建立Connector對話方塊,需配置Host(MySQL內網地址)、Port(預設3306)、Database、Table、User、Password等串連資訊,以及寫入模式、匯入欄位、網路類型(VPC或傳統網路)等同步參數。選擇VPC網路時還需填寫VPC ID和執行個體ID(可在RDS管控台查看)。配置完成後單擊建立。
下面羅列了部分管控台建立同步任務的配置說明,更多更靈活的操作請參考SDK使用。
-
HostMySQL服務地址,請務必填寫
內網地址以確保服務聯通性 -
匯入欄位DataHub可以根據使用者佈建將部分column內容同步到MySQL表中
-
寫入模式包括IGNORE和OVERWRITE兩種模式
-
IGNORE: 忽略重複資料,即
INSERT IGNORE INTO寫入 -
OVERWRITE: 更新重複資料,即
REPLACE INTO寫入
-
同步樣本
-
建立MySQL執行個體和表結構在MySQL管控台中建立MySQL執行個體和資料表
-
建立DataHub Topic在DataHub中建立Topic,樣本中為TUPLE類型topic,schema如下所示。
樣本中Topic名稱為wurao_tuple_test_001,schema包含3個欄位:field1(STRING)、field2(BIGINT)和field3(DOUBLE),均不允許為空白。
-
建立同步任務這裡寫入模式選擇IGNORE,匯入所有欄位
-
向DataHub中寫入TUPLE資料,共4條資料
樣本資料中field1為f_1和f_2,field2為1和2,field3為1和2,兩組資料各重複一次。
-
確認同步資料這裡採用MySQL用戶端串連MySQL服務查看資料,資料結果如下所示。
mysql> select * from wurao_tuple_test_001;
+--------+--------+--------+
| field1 | field2 | field3 |
+--------+--------+--------+
| f_1 | 1 | 1.00 |
| f_2 | 2 | 2.00 |
| f_1 | 1 | 1.00 |
| f_2 | 2 | 2.00 |
+--------+--------+--------+
4 rows in set (0.00 sec)
同步資料到ADS3.0
準備工作
1.準備ADS執行個體和表結構使用ADS管控台建立ADS執行個體,可選擇傳統網路和VPC網路,同樣,建立DataHub同步任務時,請選擇正確的網路類型。DataHub同步時,會根據DataHub Field的資料類型同步到對應的ADS資料類型中,對應的類型映射關係如下所示:
|
DataHub |
ADS |
|
TINYINT |
TINYINT |
|
SMALLINT |
SMALLINT |
|
INTEGER |
INT |
|
BIGINT |
BIGINT |
|
STRING |
VARCHAR |
|
BOOLEAN |
BOOLEAN / TINYINT |
|
FLOAT |
FLOAT |
|
DOUBLE |
DOUBLE |
|
TIMESTAMP |
TIMESTAMP / BIGINT |
|
DECIMAL |
DECIMAL |
DataHub 中的 TINYINT , SMALLINT , INTEGER , FLOAT 類型從 java sdk 2.16.1-public 開始支援。2.ADS白名單和內網地址使用者使用DataHub同步功能時,需要在RDS管控台中配置IP白名單以便DataHub服務訪問使用者ADS服務,DataHub服務對應的IP白名單地址域參考 常見問題同樣,在建立DataHub同步任務時,使用者需要填寫ADS內網地址以確保網路連通性。3.同步說明1)目前DataHub僅支援將TUPLE資料同步到ADS服務中2)DataHub中的TIMESTAMP預設按照微秒(Microsecond)時間轉換成ADS TIMESTAMP類型,請使用者注意控制資料精度3)為了避免並發讀寫同一個主鍵資料出現加鎖競爭,請使用者確保同一主鍵的資料寫入到DataHub同一Shard中4)使用VPC網路時,請確保DataHub Topic和ADS執行個體在同一個Region
建立同步任務
-
依次進入
專案列表/Project詳情/Topic詳情頁面 -
點擊右上方的
+ 同步按鈕進行同步任務建立,彈出建立Connector對話方塊,需配置Host、Port(預設3306)、Database、Table、User、Password等串連資訊,以及寫入模式、匯入欄位、網路類型等同步參數。選擇VPC網路時還需填寫VPC ID和執行個體ID。配置完成後單擊建立。
下面羅列了部分管控台建立同步任務的配置說明,更多更靈活的操作請參考SDK使用。
-
HostRDS服務地址,請務必填寫
內網地址以確保服務聯通性 -
匯入欄位DataHub可以根據使用者佈建將部分column內容同步到RDS表中
-
寫入模式包括IGNORE和OVERWRITE兩種模式
-
IGNORE: 忽略重複資料,即
INSERT IGNORE INTO寫入 -
OVERWRITE: 更新重複資料,即
REPLACE INTO寫入
-
-
執行個體ID 擷取方式
-
點擊調試按鈕,在調試頁面選擇服務地址,填入DBClusterId(AnalyticDB MySQL 數倉版叢集 ID) ,發起調用
-
進入DescribeDBClusterAttribute介面文檔頁面,可看到介面說明和右側的調試按鈕。
-
除DBClusterId外,還需在RegionId中填入叢集所在地區ID(如cn-beijing),然後單擊發起調用。
-
-
調用結果頁面VPCCloudInstanceId欄位值即為要填寫的執行個體ID值
-
調用成功後(狀態代碼200),在返回的JSON結果中可通過搜尋vpccloud關鍵字快速定位VPCCloudInstanceId欄位。
-
同步樣本
-
建立ADS執行個體和表結構
-
建立DataHub Topic在DataHub中建立Topic,樣本中為TUPLE類型topic,schema包含3個欄位:field1(STRING)、field2(BIGINT)和field3(DOUBLE),均不允許為空白。
-
建立同步任務這裡寫入模式選擇IGNORE,匯入所有欄位,即匯入field1、field2、field3,網路類型選擇CLASSIC,單擊建立完成配置。
-
向DataHub中寫入TUPLE資料,共4條資料。樣本資料中field1為f_1和f_2,field2為1和2,field3為1和2,兩組資料各重複一次。
-
確認同步資料這裡採用MySQL用戶端串連ADS服務查看資料,資料結果如下所示:
mysql> select * from wurao_tuple_test_001; +--------+--------+--------+ | field1 | field2 | field3 | +--------+--------+--------+ | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | | f_1 | 1 | 1.00 | | f_2 | 2 | 2.00 | +--------+--------+--------+ 4 rows in set (0.00 sec)