本文為您介紹通過DataWorks的數(shù)據(jù)集成功能,從RDS MySQL導(dǎo)入數(shù)據(jù)至圖數(shù)據(jù)庫GDB。
前提條件
- 已創(chuàng)建RDS MySQL實(shí)例,創(chuàng)建方法請參見創(chuàng)建RDS MySQL實(shí)例。
- 已創(chuàng)建圖數(shù)據(jù)庫GDB實(shí)例,創(chuàng)建方法請參見創(chuàng)建實(shí)例。
- 已完成獨(dú)享資源組配置,配置方法請參見獨(dú)享資源組模式。
- 已完成RDS MySQL數(shù)據(jù)源配置,配置方法請參見配置MySQL數(shù)據(jù)源。
- 已完成圖數(shù)據(jù)庫GDB數(shù)據(jù)源配置,配置方法請參見配置Graph Database數(shù)據(jù)源。
操作步驟
- 配置同步任務(wù)腳本
- 單擊目標(biāo)DataWorks工作空間所在行操作列的進(jìn)入數(shù)據(jù)開發(fā)。
- 創(chuàng)建離線同步節(jié)點(diǎn),具體請參見離線同步節(jié)點(diǎn)。
- 在選擇數(shù)據(jù)源向?qū)拢瑘?zhí)行以下操作。
- 在數(shù)據(jù)來源區(qū)域,選擇數(shù)據(jù)源類型為MySQL,數(shù)據(jù)源為已配置完成的MySQL數(shù)據(jù)源。
- 在數(shù)據(jù)去向區(qū)域,選擇數(shù)據(jù)源類型為GDB,數(shù)據(jù)源為已配置完成的GDB數(shù)據(jù)源。
說明 圖數(shù)據(jù)庫GDB當(dāng)前僅支持通過腳本模式配置數(shù)據(jù)去向,具體請參見通過腳本模式配置任務(wù)。
- 單擊工具欄提示信息中的點(diǎn)擊轉(zhuǎn)換為腳本。
- 在配置腳本頁面,編輯同步任務(wù)參數(shù)。
以下示例配置是同步數(shù)據(jù)源
mysql_loader
中數(shù)據(jù)表comment
到GDB數(shù)據(jù)源gdb_loader
中,將表數(shù)據(jù)轉(zhuǎn)換成GDB的點(diǎn),表中部分列映射為點(diǎn)的屬性。{ "type": "job", "steps": [ { "stepType": "mysql", // 數(shù)據(jù)來源類型 "parameter": { "datasource": "mysql_loader", // mysql數(shù)據(jù)源 "column": [ // 讀取的數(shù)據(jù)表列名 "node_id", "node_label", "m_id", "imagefile", "creationDate" ], "connection": [ // 連接信息 { "datasource": "mysql_loader", "table": [ // 讀取的數(shù)據(jù)庫表 "post" ] } ], "where": "", "splitPk": "", "encoding": "UTF-8" }, "name": "Reader", "category": "reader" }, { "stepType": "gdb", // 數(shù)據(jù)去向類型 "parameter": { "datasource": "gdb_loader", // gdb數(shù)據(jù)源 "session": true, // 使用GDB的批量事務(wù)模式 "column": [ // 到GDB數(shù)據(jù)的映射規(guī)則 { "columnType": "primaryKey", // 主鍵ID映射 "name": "id", "type": "string", // 主鍵值類型,配置為非string類型會導(dǎo)致異常。 "value": "#{0}" // 主鍵映射列序號 }, { "columnType": "vertexProperty", // 點(diǎn)屬性映射 "name": "m_id", // 屬性名 "type": "string", // 屬性值類型 "value": "#{2}" // 屬性值映射列序號 }, { "columnType": "vertexProperty", // 點(diǎn)屬性映射 "name": "imagefile", // 屬性名 "type": "string", // 屬性值類型 "value": "#{3}" // 屬性值映射列序號 }, { "columnType": "vertexProperty", // 點(diǎn)屬性映射 "name": "creationDate", // 屬性名 "type": "long", // 屬性值類型 "value": "#{4}" // 屬性值映射列序號 } ], "labelType": "VERTEX", // 導(dǎo)入GDB數(shù)據(jù)類型,可選VERTEX和EDGE。 "maxRecordsInBatch": 32, // 批量事務(wù)中一次事務(wù)更新的記錄數(shù),在打開批量事務(wù)時(shí)有效,建議使用默認(rèn)值。 "label": "#{1}", // 導(dǎo)入數(shù)據(jù)點(diǎn)名稱label,可直接提供常量字符串如果本次導(dǎo)入的點(diǎn)名稱相同。 "writeMode": "INSERT", // 寫入數(shù)據(jù)類型,INSERT模式時(shí)重復(fù)寫入會報(bào)錯(cuò)。 "idTransRule": "none" // 主鍵ID映射規(guī)則,配置none表示保持原配置的映射值。 }, "name": "Writer", "category": "writer" } ], "version": "2.0", "order": { "hops": [ { "from": "Reader", "to": "Writer" } ] }, "setting": { "speed": { "record": "3000" }, "route": "zhangbei" //zhangbei為地域名稱,您需要將其修改為圖數(shù)據(jù)庫GDB實(shí)例所在地域名稱。 } }
- 單擊,并單擊。
- 執(zhí)行同步任務(wù)腳本
- 單擊腳本窗口右側(cè)導(dǎo)航欄的基本配置,在彈出窗口選擇資源組。
- 單擊,開始導(dǎo)入RDS MySQL數(shù)據(jù)至圖數(shù)據(jù)庫GDB。
說明- 如果配置以及網(wǎng)絡(luò)環(huán)境正確,您將看到周期性的同步信息輸出,最后同步完成時(shí)會輸出任務(wù)的統(tǒng)計(jì)信息。
- 如果您只需要導(dǎo)入少量測試數(shù)據(jù)到GDB,也可以使用GDB的外網(wǎng)地址創(chuàng)建數(shù)據(jù)源,使用默認(rèn)資源組運(yùn)行導(dǎo)入任務(wù)。但由于外網(wǎng)環(huán)境復(fù)雜,且延時(shí)較高,不能保障服務(wù)質(zhì)量,僅限于測試使用。