操作場景
CDM支持表到表的遷移,本章節介紹如何通過CDM將數據從Oracle遷移到數據倉庫服務(Data Warehouse Service,簡稱DWS)中,流程如下:
1.創建CDM集群并綁定EIP
2.創建Oracle連接
3.創建DWS連接
4.創建遷移作業
前提條件
- 已購買DWS集群,并且已獲取DWS數據庫的IP地址、端口、數據庫名稱、用戶名、密碼,且該用戶擁有DWS數據庫的讀、寫和刪除權限。
- 已獲取Oracle數據庫的IP、數據庫名、用戶名和密碼。
- 如果Oracle數據庫是在本地數據中心或第三方云上,需要確保Oracle可通過公網IP訪問,或者已經建立好了企業內部數據中心到云的VPN通道或專線。
- 用戶已參考 管理驅動,上傳了Oracle數據庫驅動。
創建CDM集群并綁定EIP
1.參考創建CDM集群,創建CDM集群。
關鍵配置如下:
- CDM集群的規格,按待遷移的數據量選擇,一般選擇cdm.medium即可,滿足大部分遷移場景。
- CDM集群所在VPC、子網、安全組,選擇與DWS集群所在的網絡一致。
- 如果安全控制原因不能使用相同子網和安全組,那么需要確保安全組規則能允許CDM訪問云搜索服務集群。
2.CDM集群創建完成后,在集群管理界面選擇“綁定彈性IP”,CDM通過EIP訪問Oracle數據源。
說明如果用戶對本地數據源的訪問通道做了SSL加密,則CDM無法通過彈性IP連接數據源。
創建Oracle連接
1.單擊CDM集群后的“作業管理”,進入作業管理界面,再選擇“連接管理 > 新建連接”,進入選擇連接器類型的界面。
詳見下圖:選擇連接器類型

2.連接器類型選擇“Oracle”后單擊“下一步”,配置Oracle連接參數,參數說明如下表“Oracle連接參數”所示。
詳見下圖:創建Oracle連接

表 Oracle連接參數
| 參數名 | 說明 | 取值樣例 |
|---|---|---|
| 名稱 | 輸入便于記憶和區分的連接名稱。 | oracle_link |
| 數據庫服務器 | 數據庫服務器域名或IP地址。 | 192.168.0.1 |
| 端口 | Oracle數據庫的端口。 | 3306 |
| 數據庫連接類型 | Oracle數據庫連接類型。 | Service Name |
| 數據庫名稱 | 要連接的數據庫。 | db_user |
| 用戶名 | 擁有Oracle數據庫的讀取權限的用戶。 | admin |
| 密碼 | Oracle數據庫的登錄密碼。 | - |
| 使用Agent | 是否選擇通過Agent從源端提取數據。 | 是 |
| Agent | 單擊“選擇”,選擇連接Agent中已創建的Agent。 | - |
| ORACLE版本 | 默認使用最新版本驅動,若不兼容請嘗試其他版本。 | 高于12.1 |
| 驅動版本 | 需要適配的驅動。 | - |
| 一次請求行數 | 指定每次請求獲取的行數。 | 1000 |
| 連接屬性 | 自定義連接屬性。 | useCompression=true |
| 引用符號 | 連接引用表名或列名時的分隔符號。默認為空。 | ' |
3.單擊“保存”回到連接管理界面。
創建DWS連接
1.單擊CDM集群后的“作業管理”,進入作業管理界面,再選擇“連接管理 > 新建連接”,進入選擇連接器類型的界面。
2.連接器類型選擇“數據倉庫服務(DWS)”后單擊“下一步”配置DWS連接參數,必填參數如下表“DWS連接參數”所示,可選參數保持默認即可。
| 參數名 | 說明 | 取值樣例 |
|---|---|---|
| 名稱 | 輸入便于記憶和區分的連接名稱。 | dwslink |
| 數據庫服務器 | DWS數據庫的IP地址或域名。 | 192.168.0.3 |
| 端口 | DWS數據庫的端口。 | 8000 |
| 數據庫名稱 | DWS數據庫的名稱。 | db_demo |
| 用戶名 | 擁有DWS數據庫的讀、寫和刪除權限的用戶。 | dbadmin |
| 密碼 | 用戶的密碼。 | - |
| 使用Agent | 是否選擇通過Agent從源端提取數據。 | 是 |
| Agent | 單擊“選擇”,選擇連接Agent中已創建的Agent。 | - |
| 導入模式 | COPY模式:將源數據經過DWS管理節點后拷貝到數據節點。如果需要通過Internet訪問DWS,只能使用COPY模式。 | COPY |
3.單擊“保存”完成創建連接。
創建遷移作業
1.選擇“表/文件遷移 > 新建作業”,開始創建從Oracle導出數據到DWS的任務。
詳見下圖:創建Oracle到DWS的遷移任務

- 作業名稱:用戶自定義便于記憶、區分的任務名稱。
- 源端作業配置
?源連接名稱:選擇創建Oracle連接中的“oracle_link”。
?模式或表空間:待遷移數據的數據庫名稱。
?表名:待遷移數據的表名。
?高級屬性里的可選參數一般情況下保持默認既可,詳細說明請參見配置常見關系數據庫源端參數。
- 目的端作業配置
?目的連接名稱:選擇上述 創建DWS連接中的連接“dwslink”。
?模式或表空間:選擇待寫入數據的DWS數據庫。
?自動創表:只有當源端和目的端都為關系數據庫時,才有該參數。
?表名:待寫入數據的表名,可以手動輸入一個不存在表名,CDM會在DWS中自動創建該表。
?存儲模式:可以根據具體應用場景,建表的時候選擇行存儲還是列存儲表。一般情況下,如果表的字段比較多(大寬表),查詢中涉及到的列不多的情況下,適合列存儲。如果表的字段個數比較少,查詢大部分字段,那么選擇行存儲比較好。
?擴大字符字段長度:當目的端和源端數據編碼格式不一樣時,自動建表的字符字段長度可能不夠用,配置此選項后CDM自動建表時會將字符字段擴大3倍。
?導入前清空數據:任務啟動前,是否清除目的表中數據,用戶可根據實際需要選擇。
2.單擊“下一步”進入字段映射界面,CDM會自動匹配源和目的字段,如下圖“表到表的字段映射”所示。
- 如果字段映射順序不匹配,可通過拖拽字段調整。
- 單擊,可批量映射字段。
- CDM的表達式已經預置常用字符串、日期、數值等類型的字段內容轉換。

3.單擊“下一步”配置任務參數,一般情況下全部保持默認即可。
該步驟用戶可以配置如下可選功能:
- 作業失敗重試:如果作業執行失敗,可選擇是否自動重試,這里保持默認值“不重試”。
- 作業分組:選擇作業所屬的分組,默認分組為“DEFAULT”。在CDM“作業管理”界面,支持作業分組顯示、按組批量啟動作業、按分組導出作業等操作。
- 是否定時執行:如果需要配置作業定時自動執行,請參見 配置定時任務。這里保持默認值“否”。
- 抽取并發數:設置同時執行的抽取任務數。可適當調大參數,提升遷移效率。
- 是否寫入臟數據:表到表的遷移容易出現臟數據,建議配置臟數據歸檔。
- 作業運行完是否刪除:這里保持默認值“不刪除”。
4.單擊“保存并運行”,回到作業管理界面,在作業管理界面可查看作業執行進度和結果。
5.作業執行成功后,單擊作業操作列的“歷史記錄”,可查看該作業的歷史執行記錄、讀取和寫入的統計數據。
在歷史記錄界面單擊“日志”,可查看作業的日志信息。
說明如遇目的端寫太久導致遷移超時,請減少Oracle連接器中“一次請求行數”參數值的設置。