全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 更多
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 智能硬件
云数据库 Redis 版

通过数据集成将数据导入 Redis

更新时间:2017-08-22 09:12:59

数据集成简介

数据集成(Data Integration)是阿里集团对外提供的可跨异构数据存储系统的、可靠、安全、低成本、可弹性扩展的数据同步平台,为20多种数据源提供不同网络环境下的离线(全量/增量)数据进出通道。详细的数据源类型列表请参考支持的数据源类型。您可以通过数据集成向云数据库 Redis 版进行数据的导入数据。

一、创建 Redis 数据源

Redis 数据源支持写入 Redis 的通道,可以通过脚本模式配置同步任务 。

注意

  • 只有项目管理员角色才能够新建数据源,其他角色的成员仅能查看数据源。

  • 如您想用子账号创建数据集成任务,需赋予子账号相应的权限。具体请参考:开通阿里云主账号设置子账号

操作步骤

  1. 以开发者身份进入阿里云数加平台,单击项目列表下对应项目操作栏中的进入工作区
  1. 单击顶部菜单栏中数据集成模块的数据源

  2. 单击新增数据源

  3. 新建数据源对话框中,选择数据源类型Redis

  4. 配置 Redis 数据源的各个信息项,如下图所示。

    配置数据源

    注意:若账号没有授权数据集成默认角色,需要前往 RAM 进行角色授权。

    配置项具体说明如下:

    • 数据源名称: 由英文字母、数字、下划线组成且需以字符或下划线开头,长度不超过60个字符。

    • 数据源描述: 对数据源进行简单描述,不得超过80个字符 。

    • 数据源类型:当前选择的数据源类型为 Redis:有公网IP的自建数据库。

    • 服务地址:格式为 host:port

    • 添加访问地址:添加访问地址,格式为 host:port

    • 密码:数据库对应的密码 。

  5. 完成上述信息项的配置后,单击测试连通性

  6. 测试连通性通过后,单击确定

二、配置脚本模式的同步任务

  1. 以项目管理员身份进入数加管理控制台,单击大数据开发套件下对应项目操作栏中的进入工作区

    进入工作区

  2. 进入顶部菜单栏中的数据集成页面,选择脚本模式,如下图。

    脚本模式

    说明:Redis 不支持向导模式。进入脚本界面你可以选择相应的模板,此模板包含了同步任务的主要参数,将相关的信息填写完整,但是脚本模式不能转化成向导模式。

  3. 导入模板对话框中选择需要的来源类型目标类型,并单击确认。如下图所示:

    导入模板

  4. 脚本模式配置页面,根据自身情况进行配置,如有问题可单击右上方的 Redis Writer 帮助手册进行查看。如下图所示:

    脚本模式配置页面

    说明: RedisWriter 脚本案例如下:

    1. {
    2. "type": "job",
    3. "configuration": {
    4. "setting": {
    5. "speed": {
    6. "concurrent": "1",//并发数
    7. "mbps": "1"//同步能达到的最大数率
    8. },
    9. "errorLimit": {
    10. "record": "0"
    11. }
    12. },
    13. "reader": {
    14. "parameter": {
    15. "splitPk": "id",//切分键
    16. "column": [
    17. "id",
    18. "name",
    19. "year"
    20. ],
    21. "table": "person",//表名
    22. "where": "",//
    23. "datasource": "px_mysql"//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
    24. },
    25. "plugin": "mysql"
    26. },
    27. "writer": {
    28. "parameter": {
    29. "expireTime": {
    30. "seconds": "1000"//相对当前时间的秒数,该时间指定了从现在开始多长时间后数据失效
    31. },
    32. "keyFieldDelimiter": "\u0001",//写入 redis key 分隔符。比如: key=key1\u0001id,如果 key 有多个需要拼接时,该值为必填项,如果 key 只有一个则可以忽略该配置项。
    33. "writeMode": {
    34. "valueFieldDelimiter": "\u0001",//value 类型是 string 时,value 之间的分隔符,比如 value1\u0001value2\u0001value3
    35. "type": "string",//value类型
    36. "mode": "set"//写入的模式,存储这个数据,如果已经存在则覆盖
    37. },
    38. "batchSize": "1000",//一次性批量提交的记录数大小
    39. "dateFormat": "yyyy-MM-dd HH:mm:ss",//时间格式
    40. "keyIndexes": [
    41. 0,
    42. 1
    43. ],//keyIndexes 表示源端哪几列需要作为 key(第一列是从 0 开始),如果是第一列和第二列需要组合作为 key,那么 keyIndexes 的值则为 [0,1]。
    44. "datasource": "px_redis_datasource"//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
    45. },
    46. "plugin": "redis"
    47. }
    48. },
    49. "version": "1.0"
    50. }

    运行结果如下:

    运行结果

本文导读目录