本文为您介绍通过DataWorks的数据集成功能,从RDS MySQL导入数据至图数据库GDB。
前提条件
- 已创建RDS MySQL实例,创建方法请参见创建RDS MySQL实例。
- 已创建图数据库GDB实例,创建方法请参见创建实例。
- 已完成独享资源组配置,配置方法请参见独享资源组模式。
- 已完成RDS MySQL数据源配置,配置方法请参见配置MySQL数据源。
- 已完成图数据库GDB数据源配置,配置方法请参见配置Graph Database数据源。
操作步骤
- 配置同步任务脚本
- 单击目标DataWorks工作空间所在行操作列的进入数据开发。
- 创建离线同步节点,具体请参见离线同步节点。
- 在选择数据源向导下,执行以下操作。
- 在数据来源区域,选择数据源类型为MySQL,数据源为已配置完成的MySQL数据源。
- 在数据去向区域,选择数据源类型为GDB,数据源为已配置完成的GDB数据源。
说明 图数据库GDB当前仅支持通过脚本模式配置数据去向,具体请参见通过脚本模式配置任务。
- 单击工具栏提示信息中的点击转换为脚本。
- 在配置脚本页面,编辑同步任务参数。
以下示例配置是同步数据源
mysql_loader
中数据表comment
到GDB数据源gdb_loader
中,将表数据转换成GDB的点,表中部分列映射为点的属性。{ "type": "job", "steps": [ { "stepType": "mysql", // 数据来源类型 "parameter": { "datasource": "mysql_loader", // mysql数据源 "column": [ // 读取的数据表列名 "node_id", "node_label", "m_id", "imagefile", "creationDate" ], "connection": [ // 连接信息 { "datasource": "mysql_loader", "table": [ // 读取的数据库表 "post" ] } ], "where": "", "splitPk": "", "encoding": "UTF-8" }, "name": "Reader", "category": "reader" }, { "stepType": "gdb", // 数据去向类型 "parameter": { "datasource": "gdb_loader", // gdb数据源 "session": true, // 使用GDB的批量事务模式 "column": [ // 到GDB数据的映射规则 { "columnType": "primaryKey", // 主键ID映射 "name": "id", "type": "string", // 主键值类型,配置为非string类型会导致异常。 "value": "#{0}" // 主键映射列序号 }, { "columnType": "vertexProperty", // 点属性映射 "name": "m_id", // 属性名 "type": "string", // 属性值类型 "value": "#{2}" // 属性值映射列序号 }, { "columnType": "vertexProperty", // 点属性映射 "name": "imagefile", // 属性名 "type": "string", // 属性值类型 "value": "#{3}" // 属性值映射列序号 }, { "columnType": "vertexProperty", // 点属性映射 "name": "creationDate", // 属性名 "type": "long", // 属性值类型 "value": "#{4}" // 属性值映射列序号 } ], "labelType": "VERTEX", // 导入GDB数据类型,可选VERTEX和EDGE。 "maxRecordsInBatch": 32, // 批量事务中一次事务更新的记录数,在打开批量事务时有效,建议使用默认值。 "label": "#{1}", // 导入数据点名称label,可直接提供常量字符串如果本次导入的点名称相同。 "writeMode": "INSERT", // 写入数据类型,INSERT模式时重复写入会报错。 "idTransRule": "none" // 主键ID映射规则,配置none表示保持原配置的映射值。 }, "name": "Writer", "category": "writer" } ], "version": "2.0", "order": { "hops": [ { "from": "Reader", "to": "Writer" } ] }, "setting": { "speed": { "record": "3000" }, "route": "zhangbei" //zhangbei为地域名称,您需要将其修改为图数据库GDB实例所在地域名称。 } }
- 单击,并单击。
- 执行同步任务脚本
- 单击脚本窗口右侧导航栏的基本配置,在弹出窗口选择资源组。
- 单击,开始导入RDS MySQL数据至图数据库GDB。
说明- 如果配置以及网络环境正确,您将看到周期性的同步信息输出,最后同步完成时会输出任务的统计信息。
- 如果您只需要导入少量测试数据到GDB,也可以使用GDB的外网地址创建数据源,使用默认资源组运行导入任务。但由于外网环境复杂,且延时较高,不能保障服务质量,仅限于测试使用。