RDS DuckDB分析主執行個體支援列式儲存、即時編譯、向量化執行、高效的記憶體管理和平行處理等能力,相比InnoDB引擎,複雜查詢效能提升百倍。通過Data Transmission Service,您可以將RDS MySQL的資料庫結構和資料同步到RDS DuckDB分析主執行個體,快速構建企業BI、互動查詢和即時報表系統。
適用範圍
已建立目標RDS DuckDB分析主執行個體,詳情請參見建立DuckDB分析主執行個體。
確保目標RDS DuckDB分析主執行個體的儲存空間大於源端資料庫已使用的儲存空間。
注意事項
RDS MySQL中待同步的資料表必須具備主鍵。
DTS在執行全量資料初始化時將佔用源庫和目標庫一定的讀寫資源,可能會導致資料庫的負載上升,建議您在業務低峰期執行資料同步(例如源庫和目標庫的CPU負載在30%以下)。
請勿在資料同步時,對源庫的同步對象使用gh-ost或pt-online-schema-change等類似工具執行線上DDL變更,否則會導致同步失敗。
由於RDS DuckDB分析主執行個體的使用限制,當叢集中的節點磁碟空間使用量超過80%,該叢集將被鎖定。請提前預估待同步對象所需的空間,確保目的地組群具備充足的儲存空間。
暫不支援同步首碼索引,如果源庫存在首碼索引可能導致資料同步失敗。
若DTS任務運行時目標RDS DuckDB分析主執行個體處於備份中的狀態,則會導致任務失敗。
暫不支援RDS DuckDB分析主執行個體作為資料來源進行資料同步。
若
DML語句包含LIMIT、非確定性函數(如UUID())或XA事務時,屬於複製不安全(Unsafe)操作,可能導致主備資料不一致,同步至 DuckDB 主執行個體時應避免使用。
費用說明
| 同步類型 | 鏈路配置費用 |
| 庫表結構同步和全量資料同步 | 不收費。 |
| 增量資料同步 | 收費,詳情請參見計費概述。 |
源庫支援的執行個體類型
執行資料同步操作的源MySQL資料庫支援以下執行個體類型:
RDS MySQL
ECS上的自建資料庫
本地自建資料庫
本文以RDS MySQL為例介紹配置流程,當來源資料庫為自建MySQL資料庫時,配置流程與該案例類似。
如果您的來源資料庫為自建MySQL資料庫,您還需要執行相應的準備工作,詳情請參見準備工作概覽。
支援同步的SQL操作
DDL操作:CREATE TABLE、DROP TABLE、RENAME TABLE、TRUNCATE TABLE、ADD COLUMN、DROP COLUMN、MODIFY COLUMN
DML操作:INSERT、UPDATE、DELETE
不支援在
UPDATE或DELETE語句中指定ORDER BY和LIMIT。如果在資料同步的過程中變更了源表的欄位類型,同步作業將報錯並中斷。您可以參照文末的方法來手動修複,詳情請參見修複因變更欄位類型導致的同步失敗。
資料庫帳號的許可權要求
資料庫 | 要求的權限 |
RDS MySQL | 推薦使用高許可權帳號,如果是普通帳號,需要具備REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和所有同步對象的SELECT許可權。 |
RDS DuckDB分析主執行個體 | 推薦使用高許可權帳號,如果是普通帳號,需要具備READ和WRITE許可權。 |
操作步驟
登入Data Transmission Service控制台,在左邊功能表列中,選擇資料同步,在頂部導覽列中選擇地區。
在資料同步頁面中,單擊建立任務,進行同步任務的建立。
在頁面,配置同步任務的源庫資訊及目標庫資訊。
源執行個體資訊
配置
說明
資料庫類型
接入方式
雲執行個體
執行個體地區
購買資料同步執行個體時選擇的源執行個體地區資訊,不可變更。
是否跨阿里雲帳號
不跨帳號
執行個體ID
選擇源RDS執行個體ID。
資料庫帳號
填入源RDS的資料庫帳號,許可權要求請參見資料庫帳號的許可權要求。
資料庫密碼
填入該資料庫帳號對應的密碼。
串連方式
根據需求選擇非加密串連或SSL安全連線。如果設定為SSL安全連線,您需要提前開啟RDS執行個體的SSL加密功能,詳情請參見使用雲端認證快速開啟SSL鏈路加密。
重要目前僅中國內地及中國香港地區支援設定串連方式。
目標執行個體資訊
配置
說明
資料庫類型
接入方式
雲執行個體
執行個體地區
購買資料同步執行個體時選擇的目標執行個體地區資訊,不可變更。
是否跨阿里雲帳號
不跨帳號
說明DTS 同步任務支援跨地區資料同步遷移,本方案按照架構所示以相同地區同 VPC 內資料同步為例為您介紹構建資料一致性,更多資料同步資訊請參考同步方案概覽。
RDS執行個體ID
DuckDB的執行個體ID
資料庫帳號
填入RDS DuckDB分析主執行個體的資料庫帳號,許可權要求請參見資料庫帳號的許可權要求。
資料庫密碼
填入該資料庫帳號對應的密碼。
串連方式
根據需求選擇非加密串連或SSL安全連線。如果設定為SSL安全連線,您需要提前開啟RDS執行個體的SSL加密功能,詳情請參見使用雲端認證快速開啟SSL鏈路加密。
重要目前僅中國內地及中國香港地區支援設定串連方式。
單擊測試連接以進行下一步。
在DTS 伺服器訪問授權彈框中,單擊測試連接。
配置任務對象。
在對象配置頁面,配置待同步的對象。
配置
說明
同步類型
如果只需要進行全量同步,建議同時選中庫表結構同步和全量同步。
如果需要進行不停機同步,建議同時選中庫表結構同步、全量同步和增量同步處理。
說明若未選中庫表結構同步,請確保目標庫中存在接收資料的資料庫和表,並根據實際情況,在已選擇對象框中使用庫表列名映射功能。
若未選中增量同步處理,為保障資料一致性,資料同步期間請勿在源執行個體中寫入新的資料。
源庫觸發器遷移方式
請根據實際情況選擇遷移觸發器的方式,若您待遷移的對象不涉及觸發器,則無需配置。更多資訊,請參見配置同步或遷移觸發器的方式。
說明僅當同步類型選擇了庫表結構同步時才可以配置。
開啟遷移評估
評估源庫和目標庫的結構(如索引長度、預存程序、依賴的表等)是否滿足要求,您可以根據實際情況選擇是或者否。
說明僅當同步類型選擇了庫表結構同步時才可以配置。
若選擇是,則可能會增加預檢查時間。您可以在預檢查階段查看評估結果,評估結果不影響預檢查結果。
同步拓撲
選擇單向同步。
目標已存在表的處理模式
預檢查並報錯攔截:檢查目標資料庫中是否有同名的表。如果目標資料庫中沒有同名的表,則通過該檢查專案;如果目標資料庫中有同名的表,則在預檢查階段提示錯誤,資料同步任務不會被啟動。
說明如果目標庫中同名的表不方便刪除或重新命名,您可以更改該表在目標庫中的名稱,請參見庫表列名映射。
忽略報錯並繼續執行:跳過目標資料庫中是否有同名表的檢查項。
警告選擇為忽略報錯並繼續執行,可能導致資料不一致,給業務帶來風險,例如:
表結構一致的情況下,在目標庫遇到與源庫主鍵的值相同的記錄:
全量期間,DTS會保留目的地組群中的該條記錄,即源庫中的該條記錄不會遷移至目標資料庫中。
增量期間,DTS不會保留目的地組群中的該條記錄,即源庫中的該條記錄會覆蓋至目標資料庫中。
表結構不一致的情況下,可能導致只能同步部分列的資料或同步失敗,請謹慎操作。
是否遷移 Event
請根據實際情況選擇是否遷移源庫中的事件(Event)。若您選擇是,則還需遵循相關要求並進行後續操作。更多資訊,請參見同步或遷移事件。
目標庫對象名稱大小寫策略
您可以配置目標執行個體中同步對象的庫名、表名和列名的英文大小寫策略。預設情況下選擇DTS預設策略,您也可以選擇與源庫、目標庫預設策略保持一致。更多資訊,請參見目標庫對象名稱大小寫策略。
源庫對象
在源庫對象框中選擇待同步對象,然後單擊
將其移動至已選擇對象框。說明同步對象選擇的粒度為庫、表、列。若選擇的同步對象為表或列,其他對象(如視圖、觸發器、預存程序)不會被同步至目標庫。
已選擇對象
如需更改單個同步對象在目標執行個體中的名稱,請右擊已選擇對象中的同步對象,設定方式,請參見庫表列名映射。
如需批量更改同步對象在目標執行個體中的名稱,請單擊已選擇對象方框右上方的大量編輯,設定方式,請參見庫表列名映射。
說明如需按庫或表層級選擇同步的SQL操作,請在已選擇對象中右擊待同步對象,並在彈出的對話方塊中選擇所需同步的SQL操作。
如需設定WHERE條件過濾資料,請在已選擇對象中右擊待同步的表,在彈出的對話方塊中設定過濾條件。設定方法請參見設定過濾條件。
單擊下一步進階配置,進行進階參數配置。
本樣本保持預設配置,無需手動設定,您也可以根據實際情況進行配置。
單擊下一步資料校正,進行資料校正任務配置。
若您需要使用資料校正功能,請按需勾選資料校正方式,其他參數保持預設配置即可,您也可以根據實際情況進行配置,配置方法請參見配置資料校正。
說明如勾選結構校正,由於歷史相容性原因,即使結構已同步完成,校正過程仍可能提示“資料不一致”錯誤。該提示為非實質性警示,不影響實際同步結果。為避免誤判,建議在資料校正時暫不啟用結構校正。
單擊下一步儲存任務並預檢查,進行同步任務的預檢查。
預檢查通過率達到 100% 後,單擊下一步購買。
說明在同步作業正式啟動之前,會先進行預檢查。只有預檢查通過後,才能成功啟動同步作業。
如果預檢查失敗,單擊具體檢查項後的
,查看失敗詳情。您可以根據提示修複後重新進行預檢查。
如無需修複警示檢測項,您也可以選擇確認屏蔽、忽略警示項並重新進行預檢查,跳過警示檢測項重新進行預檢查。
在購買頁面,選擇資料同步執行個體的計費方式、鏈路規格,詳細說明請參見下表。
類別
參數
說明
資訊配置
計費方式
預付費(訂用帳戶):在建立執行個體時支付費用。適合長期需求,價格比隨用隨付更實惠,且購買時間長度越長,折扣越多。
後付費(隨用隨付):按小時計費。適合短期需求,用完可立即釋放執行個體,節省費用。
資源群組配置
執行個體所屬的資源群組,預設為default resource group。更多資訊,請參見什麼是資源管理。
鏈路規格
DTS為您提供了不同效能的同步規格,同步鏈路規格的不同會影響同步速率,您可以根據業務情境進行選擇。更多資訊,請參見資料同步鏈路規格說明。
訂購時間長度
在預付費模式下,選擇訂用帳戶執行個體的時間長度和數量,包月可選擇1~9個月,包年可選擇1年、2年、3年和5年。
說明該選項僅在付費類型為預付費時出現。
配置完成後,閱讀並勾選《資料轉送(隨用隨付)服務條款》,單擊購買並啟動,並在彈出的確認對話方塊,單擊確定。
購買成功之後,會返回到資料同步列表頁,單擊剛建立的任務 ID 進入任務詳情頁,在詳情頁中點擊左側導覽列中的任務管理可以查看具體進度。
修複因變更欄位類型導致的同步失敗
如果在資料同步的過程中變更了源表的欄位類型,同步作業將報錯並中斷。您可參照如下的方法來手動修複。
在目標執行個體中,根據同步失敗的表A(表名以customer為例),重新建立一個新表B(表名以customer_new為例),並將新表B的欄位類型調整為所需的類型。
通過INSERT INTO SELECT命令,將表A的資料複製並插入到新建立的表B中,確保兩張表的資料保持一致。
重新命名或刪除同步失敗的表A,然後將表B的名稱修改為customer。
在DTS控制台,重新啟動資料同步作業。