Tapdata是一个国产的数据服务产品,可大幅度提高数据团队工作效率。 专注于数据的迁移、转换与发布,并提供实时性。
如下问题,可使用Tapdata来解决:
-
- 数据实例之间的数据迁移,需要高的吞吐率与可靠性保障
- 运行中的数据实例之间的数据同步,确保较低的延迟率
- 迁移或同步过程中,需要对数据的结构(模式)做转换
- 迁移或者同步过程中,需要对指定的数据值做处理
- 需要快速的发布数据产品(Restful API),供业务团队引用
总之,看起来挺牛逼,最近正好需要应用到类似工具去解决数据的抽取、转换、发布。tapdata可以对mongodb提供数据发布(配置生成Restful API),所以体验了一把。供大家参考。
环境准备
我这里涉及到两种数据库,借助了windows的客户端Navicat for MySQL和Robo3T For MongoDB来管理数据库。 tapdata提供了沙盒数据源,如下图:
MySQL,密码与用户名同名。
MongoDB
数据迁移
从MySQL数据库实例,全库迁移到MongoDB数据库实例。可全程图形化操作,步骤简要如下:
1、选择【数据传输-数据迁移】
2、选择新建
3、拖曳源、目的数据库,然后连线。分别在源、目的、连线上做设置
4、打开源端数据库,检查下数据
5、打开目标端数据库,检查下数据
6、启动任务
7、检查结果,已经完成
数据转换
从MySQL的两个表中选择一些字段,导入MongoDB的一个新集合中。
简要步骤如下:
1、在源数据中创建新的集合t_hello_world_ext
2、在【数据源】重新加载对应的源数据
3、在【数据传输-数据同步】中创建任务
4、查看目的数据,已经完成
数据发布
对目标数据库MongoDB直接发布RestfulAPI,供业务测使用。
步骤简要介绍如下:
1、设置【数据发布-API服务器】
2、创建新的API【数据发布-API发布】
3、配置客户端【数据发布-API客户端】
4、查看API文档【数据发布-API文档及测试】,用Postman测试