大数据开发套件-数据集成-云mongo跨区域同步到Maxcompute

  1. 云栖社区>
  2. 阿里云支持与服务>
  3. 博客>
  4. 正文

大数据开发套件-数据集成-云mongo跨区域同步到Maxcompute

上单 2017-06-09 16:57:18 浏览1706
展开阅读全文
 在大数据开发套件中是可以实现mongo同步到Maxcompute。

数据集成文档:https://help.aliyun.com/document_detail/47677.html?spm=5176.7750354.6.599.jGn50I
后端是通过华东1区的调度资源进行数据的调度传输。但是如果阿里云mongo不在华东1在其他区域,使用默认资源组就不能正常同步了。那么就需要用户通过自己添加调度机器进行同步。
1,准备一台调度服务器,要求必须和云mongo相同网络类型相同的区域。
官方文档:https://help.aliyun.com/document_detail/52330.html?spm=5176.7849806.6.597.l1cpB0
注意:
*请务必使用内网ip新增注册调度资源
*请务必使用ecs实例的主机名称,要求和机器上 hostname下的主机名称一致,修改后的主机名称会出现异常。
*请注意ecs系统,建议使用 centos6、centos7 或者 aliyunos;
大数据开发套件-项目管理-调度资源管理-新增调度资源
增加主机名和内网ip
然后到ecs服务器上初始化
3
执行初始化命令会有下图
4
如果成功初始化,一般会显示下载各种需要的包5
最后到控制台看下服务器状态,刷新几次
2
2,在大数据开发套件-数据集成-数据源-新数据源-选择mongo数据源类型
9

在这里注意,

*如果是mongo副本集,把副本地址都要添加进去
如果是集群,把mongos的地址也都添加进去
*请务必将新增的调度资源ecs的内网ip加入mongo的白名单
3,在数据集成-新建任务6
数据集成中mongo数据源暂时不支持向导模式,选择脚本模式
选择来源是mongo,目标odps(即maxcompute)
7
然后确认会生成脚本模版8
具体配置可以参考

{
  "configuration": {
    "reader": {
      "plugin": "mongodb",
      "parameter": {
        "datasource": "mongoxxxtest",//数据源名称
        "column": [
          {
            "name": "title",
            "type": "description"
          }
        ],
        "collectionName": "shangdantest"//集合名称
      }
    },
    "writer": {
      "plugin": "odps",
      "parameter": {
        "partition": "",
        "truncate": false,
        "datasource": "aliyunxxxodps",
        "column": [
          "title",
          "desc_d"
        ],
        "table": "mongo_test"
      }
    },
    "setting": {
      "errorLimit": {
        "record": "0"
      },
      "speed": {
        "concurrent": "1",
        "mbps": "1"
      }
    }
  },
  "type": "job",
  "version": "1.0"
}

可以参考官方文档配置
https://help.aliyun.com/knowledge_detail/50354.html?spm=5176.7849806.2.13.l1cpB0
配置完成后,点击保存-提交
然后到运维中心-任务管理-找到任务-测试运行看下_
任务运行如果失败
到运维中心-任务运维-查看任务运行的日志_
日志中如果出现下方错误10
*检查数据源,是否把副本地址都写全了,如果是集群mongos地址写全
*检查账户是否是同步库的账户。
如果问题没有解决,可以提交工单咨询阿里云售后工程师

网友评论

作者关闭了评论
上单
+ 关注
所属云栖号: 阿里云支持与服务