开发者社区> 问答> 正文

如何通过数据集成导入导出MongoDB数据

数据集成(Data Integration)是阿里集团对外提供的可跨异构数据存储系统的、可靠、安全、低成本、可弹性扩展的数据同步平台,为20+种数据源提供不同网络环境下的离线(全量/增量)数据进出通道。详细的数据源类型列表请参见 支持数据源类型。用户可以通过 数据集成(Data Integration)对云产品MongoDB进行数据的导入和导出。
数据导入和导出均有以下两种实现方式:


  • 向导模式:向导模式是可视化界面配置同步任务, 一共涉及到五步,选择来源,选择目标,字段映射,通道控制,预览保存。在每个不同的数据源之间,这几步的界面可能有不同的内容,向导模式可以转换成脚本模式。向导模式不支持创建同步任务。

  • 脚本模式:进入脚本界面你可以选择相应的模板,此模板包含了同步任务的主要参数,然后补全剩余的参数也能创建同步任务。但是脚本模式不能转化成向导模式。

本文主要介绍如何将Table Store中的数据导入到MongoDB中,将MongoDB中的数据导出到Table Store中操作步骤与导入类似,因此本文将不再赘述数据如何导出。

注意:

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

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


操作步骤

  1. 以项目管理员身份进入数加管理控制台,单击项目列表下对应项目操作栏中的进入工作区。如何创建项目请参考创建项目

  1. 进入顶部菜单栏中的数据集成页面,单击左侧导航栏中的数据源。

  2. 单击右上角的新增数据源,如下图所示:

  3. 在新增数据源对话框中填写相关配置项,针对MongoDB数据源配置项的具体说明如下:
    • 数据源名称: 由英文字母、数字、下划线组成且需以字符或下划线开头,长度不超过60个字符 。
    • 数据源描述: 对数据源进行简单描述,不得超过80个字符 。
    • 数据源类型:当前选择的数据源类型MongoDB:阿里云数据库和有公网IP的自建数据库。
    • 访问地址:格式为:host:port 。
    • 添加访问地址:添加访问地址,格式:host:port 。
    • 数据库名:该数据源对应的数据库名 。
    • 用户名/密码:数据库对应的用户名和密码 。

  • 完成上述信息项的配置后,单击测试连通性。测试通过单击确定。

  • 新建同步任务,单击数据集成下的同步任务,并选择脚本模式,如下图所示:

  • 在弹出的导入模板中选择自己需要的来源类型和目标类型,如下图所示:

  • 单击确认后即进入脚本模式配置页面,可根据自身情况进行配置,如有问题可单击右上方的帮助手册进行查看,如下图所示:

  • 单击运行即可。

  • 如下是一个完整的MongoDBReader脚本案例: {
      "type": "job",
      "configuration": {
        "setting": {
          "speed": {
            "concurrent": "1",//并发数
            "mbps": "1"//同步能达到的最大数率
          },
          "errorLimit": {
            "record": "0"//错误记录数
          }
        },
        "reader": {
          "parameter": {
            "column": [
              {
                "name": "name",
                "type": "string"
              },
              {
                "name": "year",
                "type": "int"
              }
            ],
            "datasource": "px_mongodb_datasource",//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
            "collectionName": "px"
          },
          "plugin": "mongodb"
        },
        "writer": {
          "parameter": {
            "writeMode": "insert",//写入模式
            "preSql": [],//导入前准备语句
            "column": [
              "name",
              "year"
            ],
            "table": "person",//
            "datasource": "px_mysql",//数据源名,建议数据源都先添加数据源后再配置同步任务,此配置项填写的内容必须要与添加的数据源名称保持一致
            "postSql": []
          },
          "plugin": "mysql"
        }
      },
      "version": "1.0"
    }

    展开
    收起
    云栖大讲堂 2017-10-30 17:27:59 2122 0
    0 条回答
    写回答
    取消 提交回答
    问答排行榜
    最热
    最新

    相关电子书

    更多
    Data as a Service - 数据即服务 -- MongoDB⾼级应⽤模式 立即下载
    开源数据库 MongoDB 专场 MongoDB疑难杂症分析及优化 立即下载
    饿了么高级架构师陈东明:MongoDB是如何逐步提高可靠性的 立即下载