数据集成简介
数据集成(Data Integration)是阿里集团对外提供的可跨异构数据存储系统的、可靠、安全、低成本、可弹性扩展的数据同步平台,为20多种数据源提供不同网络环境下的离线(全量/增量)数据进出通道。详细的数据源类型列表请参考
支持的数据源类型。您可以通过数据集成向云数据库 Redis 版进行数据的导入数据。
一、创建 Redis 数据源
Redis 数据源支持写入 Redis 的通道,可以通过脚本模式配置同步任务 。
[backcolor=transparent]注意:
只有项目管理员角色才能够新建数据源,其他角色的成员仅能查看数据源。
如您想用子账号创建数据集成任务,需赋予子账号相应的权限。具体请参考:开通阿里云主账号、设置子账号。
操作步骤
- 以开发者身份进入阿里云数加平台,单击[backcolor=transparent]项目列表下对应[backcolor=transparent]项目操作栏中的[backcolor=transparent]进入工作区。
单击顶部菜单栏中[backcolor=transparent]数据集成模块的[backcolor=transparent]数据源。
单击[backcolor=transparent]新增数据源。
在[backcolor=transparent]新建数据源对话框中,选择[backcolor=transparent]数据源类型为 [backcolor=transparent]Redis。
配置 Redis 数据源的各个信息项,如下图所示。
[backcolor=transparent]注意:若账号没有授权数据集成默认角色,需要前往 RAM 进行角色授权。
配置项具体说明如下:
[backcolor=transparent]数据源名称: 由英文字母、数字、下划线组成且需以字符或下划线开头,长度不超过60个字符。
[backcolor=transparent]数据源描述: 对数据源进行简单描述,不得超过80个字符 。
[backcolor=transparent]数据源类型:当前选择的数据源类型为 Redis:有公网IP的自建数据库。
[backcolor=transparent]服务地址:格式为 host:port。
[backcolor=transparent]添加访问地址:添加访问地址,格式为 host:port。
[backcolor=transparent]密码:数据库对应的密码 。
完成上述信息项的配置后,单击[backcolor=transparent]测试连通性。
测试连通性通过后,单击[backcolor=transparent]确定。
二、配置脚本模式的同步任务
以项目管理员身份进入数加管理控制台,单击[backcolor=transparent]大数据开发套件下对应[backcolor=transparent]项目操作栏中的[backcolor=transparent]进入工作区。
进入顶部菜单栏中的[backcolor=transparent]数据集成页面,选择[backcolor=transparent]脚本模式,如下图。
[backcolor=transparent]说明:Redis 不支持向导模式。进入脚本界面你可以选择相应的模板,此模板包含了同步任务的主要参数,将相关的信息填写完整,但是脚本模式不能转化成向导模式。
在[backcolor=transparent]导入模板对话框中选择需要的[backcolor=transparent]来源类型和[backcolor=transparent]目标类型,并单击[backcolor=transparent]确认。如下图所示:
在[backcolor=transparent]脚本模式配置页面,根据自身情况进行配置,如有问题可单击右上方的 [backcolor=transparent]Redis Writer 帮助手册进行查看。如下图所示:
[backcolor=transparent]说明: RedisWriter 脚本案例如下:{- "type": "job",
- "configuration": {
- "setting": {
- "speed": {
- "concurrent": "1",//并发数
- "mbps": "1"//同步能达到的最大数率
- },
- "errorLimit": {
- "record": "0"
- }
- },
- "reader": {
- "parameter": {
- "splitPk": "id",//切分键
- "column": [
- "id",
- "name",
- "year"
- ],
- "table": "person",//表名
- "where": "",//
- "datasource": "px_mysql"//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
- },
- "plugin": "mysql"
- },
- "writer": {
- "parameter": {
- "expireTime": {
- "seconds": "1000"//相对当前时间的秒数,该时间指定了从现在开始多长时间后数据失效
- },
- "keyFieldDelimiter": "\u0001",//写入 redis 的 key 分隔符。比如: key=key1\u0001id,如果 key 有多个需要拼接时,该值为必填项,如果 key 只有一个则可以忽略该配置项。
- "writeMode": {
- "valueFieldDelimiter": "\u0001",//value 类型是 string 时,value 之间的分隔符,比如 value1\u0001value2\u0001value3;
- "type": "string",//value类型
- "mode": "set"//写入的模式,存储这个数据,如果已经存在则覆盖
- },
- "batchSize": "1000",//一次性批量提交的记录数大小
- "dateFormat": "yyyy-MM-dd HH:mm:ss",//时间格式
- "keyIndexes": [
- 0,
- 1
- ],//keyIndexes 表示源端哪几列需要作为 key(第一列是从 0 开始),如果是第一列和第二列需要组合作为 key,那么 keyIndexes 的值则为 [0,1]。
- "datasource": "px_redis_datasource"//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
- },
- "plugin": "redis"
- }
- },
- "version": "1.0"
- }
运行结果如下: