您现在的位置是:首页 > 文章详情

dataworks分钟级别数据增量同步

日期:2019-12-24点击:655

一、目的

本文实现的是,十分钟调度的mysql数据增量同步到maxcompute最新分区中。

二、配置

  1. 创建rds表,建表语句如下
create table if not exists mysql_test( id INT, addtime DATETIME );

2.创建maxcompute表,建表语句如下

 id bigint, addtime datetime ) partitioned by (intime string);

3.配置同步任务,截图如下

其中数据过滤参数配置为

date_format(addtime,'%Y-%m-%d %H:%i:%s') <= '${key1} ${key3}' 

分区信息为dataworks1

含义是将最近十分钟的数据过滤出来,同步到maxcompute表的最新分区中(每十分钟创建一个分区)。

4.同步任务调度配置(主要是参数配置和时间间隔,以及生成实例方式),截图如下
dataworks2
其中参数为
key1=$[yyyy-mm-dd] key2=$[hh24:mi:ss-10/24/60] key3=$[hh24:mi:ss]
key1:当前的日期,格式是yyyy-mm-dd
key2:十分钟前的时间,格式是hh24:mi:ss
key3:当前时间,格式是hh24:mi:ss
参数说明参考
时间间隔配置为10分钟
生成实例方式为发布后及时生成

5.保存同步任务、提交

三、验证

1.确定十分钟的周期实例已经生成,可以在运维中心查看
dataworks3

2.向mysql的表mysql_test插入两条数据,具体sql如下

Insert into mysql_test values(2,date_add(now(), interval 10 MINUTE_SECOND));

数据如下
dataworks4
(上面两条数据是之前插入的,忽略就好)

3.之前插入数据的addtime分别是2019-12-25 23:39:28和2019-12-25 23:39:38,这两条数据会插入到intime=2019-12-25 23:40:00的分区中,等待10分钟后查看结果,~~~10分钟过去了,截图如下,可以使用如下语句验证

dataworks5

4.大功告成!

原文链接:https://yq.aliyun.com/articles/740668
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章