JSON数据从MongoDB迁移到MaxCompute最佳实践

Posted 阿里云云栖号

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSON数据从MongoDB迁移到MaxCompute最佳实践相关的知识,希望对你有一定的参考价值。

云栖君导读:本文为您介绍如何利用DataWorks数据集成直接从MongoDB提取JSON字段到MaxCompute。


数据及账号准备




登录MongoDB的DMS控制台,本例中使用的数据库为 admin,集合为 userlog,您可以在查询窗口使用db.userlog.find().limit(10)命令查看已上传好的数据,如下图所示。 
 

JSON数据从MongoDB迁移到MaxCompute最佳实践


此外,需提前在数据库内新建用户,用于DataWorks添加数据源。本例中使用命令db.createUser({user:"bookuser",pwd:"123456",roles:["root"]}),新建用户名为 bookuser,密码为 123456,权限为root。


使用DataWorks提取数据到MaxCompute


  1. 新增MongoDB数据源


进入DataWorks数据集成控制台,新增MongoDB类型数据源。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


具体参数如下所示,测试数据源连通性通过即可点击完成。由于本文中MongoDB处于VPC环境下,因此 数据源类型需选择 有公网IP。 

JSON数据从MongoDB迁移到MaxCompute最佳实践
JSON数据从MongoDB迁移到MaxCompute最佳实践


2.新建数据同步任务


在DataWorks上新建数据同步类型节点。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


新建的同时,在DataWorks新建一个建表任务,用于存放JSON数据,本例中新建表名为mqdata。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


表参数可以通过图形化界面完成。本例中mqdata表仅有一列,类型为string,列名为MQ data。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


完成上述新建后,您可以在图形化界面进行数据同步任务参数的初步配置,如下图所示。选择目标数据源名称为odps_first,选择目标表为刚建立的mqdata。数据来源类型为MongoDB,选择我们刚创建的数据源mongodb_userlog。完成上述配置后, 点击转换为脚本,跳转到脚本模式。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


脚本模式代码示例如下。


JSON数据从MongoDB迁移到MaxCompute最佳实践


完成上述配置后,点击运行接即可。运行成功日志示例如下所示。 

JSON数据从MongoDB迁移到MaxCompute最佳实践


结果验证


在您的业务流程中新建一个ODPS SQL节点。 
 

JSON数据从MongoDB迁移到MaxCompute最佳实践


您可以输入 SELECT * from mqdata;语句,查看当前mqdata表中数据。当然这一步您也可以直接在MaxCompute客户端中输入命令运行。 
 



end


更多精彩

以上是关于JSON数据从MongoDB迁移到MaxCompute最佳实践的主要内容,如果未能解决你的问题,请参考以下文章

将数据从 PostgreSQL 迁移到 MongoDB

使用 pymongo 将数据从 Mysql 迁移到 MongoDB

RedShift到MaxCompute迁移实践指导

使用扩展的JSON将SQL Server数据迁移到MongoDB

将Cosmos DB模拟器(MongoDB API)迁移到Azure时发生致命错误

mongodb数据库集合导入导出(迁移)