Flink-DataWorks第四部分:数据同步(第60天)
系列文章目录
2.4.2 DataStudio侧实时同步
2.4.3 数据集成侧同步任务
文章目录
- 系列文章目录
- 前言
- 2.4.2 DataStudio侧实时同步
- 2.4.3 数据集成侧同步任务
前言
本文主要详解了DataWorks的数据同步,为第四部分:
由于篇幅过长,分章节进行发布。
后续:
数据开发
2.4.2 DataStudio侧实时同步
DataWorks为用户提供的实时数据同步功能,方便用户使用单表或整库同步方式,将源端数据库中部分或全部表的数据变化实时同步至目标数据库中,实现目标库实时保持和源库的数据对应。
使用限制:
实时同步不支持在数据开发界面运行任务,用户需要保存、提交实时同步节点后,在生产环境运维中心运行该节点。
实时同步仅支持运行在独享数据集成资源组上。
实时同步任务不支持同步视图。
目前支持的同步方式有:

步骤一:创建实时同步节点
(1)创建实时同步节点
可以通过以下两种方式创建实时同步节点。
方式一:展开业务流程,右键单击数据集成 > 新建节点 > 实时同步。
方式二:双击业务流程名称,将数据集成目录下的实时同步节点直接拖拽至右侧业务流程编辑面板。
(2)在新建节点对话框中,配置各项参数
同步方式设置为数据库变更数据同步到MaxCompute
路径设置为业务流程/test/数据集成
名称设置为stream_data_integration
步骤二:配置实时同步任务
(1)设置同步来源和规则
设置类型为MySQL,数据源设置为rdsmysql
选择同步的源表,这里勾选student_list表,然后添加到右侧

设置表(库名映射规则):设置表(表(库)名映射规则支持正则表达式转换,比如需要将名称为 “table_01”,“table_02”,“table_03” 同步到一张叫 “my_table” 的表,可以配置正则表名转换规则:源:table.* > 目标 my_table)名映射规则
因为这里是单表采集,所以无需设置
点击下一步
(2)设置目标表
目标MaxCompute数据源设置为odps_first
写入模式为实时直接写增量表
时间自动分区设置:分区表

点击编辑,修改分区间隔为天
刷新源表和MaxCompute表映射
然后点击下一步
(3)因为是新表,所以需要自动建表,点击开始建表

(4)设置表粒度同步规则
点击配置DML,可以设置插入、更新、删除的策略,是选择还是正常处理

一般选择正常处理即可,点击下一步
(5)DDL消息处理规则
对于关系型数据的实时同步,其原始实时信息会包含DDL操作,此处可以设置针对于这些DDL消息同步到目标表时的操作。
【注意】此处策略仅仅是本任务初次启动时的规则,此后用户可以在对应的实时任务运维页面中,通过停止任务,修改DDL规则,再启动的方式,应用新的DDL策略。

各个处理策略的含义:
“正常处理”,此DDL消息将会继续下发给目标数据源,由目标数据源来处理,不同目标数据源处理策略可能会不同。
“忽略”:丢弃掉此DDL消息,不再向目标数据源发送此消息。
“出错”:直接让实时同步任务以出错状态终止运行。
保持默认即可。
(6)运行资源设置
资源组选择hmcx
Tunnel资源组选择公共传输资源
点击完成配置。
步骤三:提交并发布实时同步任务
(1)单击工具栏中的保存图标,保存节点。
(2)单击工具栏中的提交图标,提交节点任务。
在提交新版本对话框中,输入变更描述。
单击确定。
(3)任务提交成功后,需要将任务发布至生产环境进行发布。单击顶部菜单栏右侧的任务发布。

选择任务节点,进行发布。
(4)点击运维中心,在实时任务运维的实时同步任务中可以看到提交上来的任务
点击启动,可以启动同步任务

(5)启动成功后,稍等片刻
在MySQL中输入
insert into test.student_list values (‘09’, ‘李博’, ‘1995-05-24’, ‘男’);
然后在dataworks
set odps.sql.allow.fullscan=true;
select * from dwhmcx.rdsmysql_test_student_list;
可以看到同步的消息。

2.4.3 数据集成侧同步任务
数据集成基于源端数据库与目标端数据库类型为用户提供丰富的数据同步任务,同步类型包括:整库离线同步(一次性全量同步、周期性全量同步、离线全增量同步、一次性增量同步、周期性增量同步)、一键实时同步(一次性全量同步,实时增量同步)。不同源端与目标端数据库支持的同步方案不同,具体支持的方案详情请参考产品界面。
步骤一:创建同步任务
打开数据集成,然后在同步任务中,创建同步任务,填写来源和去向。
这里来源选择MySQL,去向选择MaxCompute,然后点击开始创建。

步骤二:选择同步方案
填写新任务名称,full_increment_integration
选择同步类型,目前支持的类型有以下几种。这里选择整库全增量(准实时)

责任人选择xxx111
步骤三:网络与资源配置
按照下图进行配置,测试连通性没有问题后点击下一步

步骤四:设置同步来源和规则
基本配置和数据来源不用修改
选择同步的源表中,选择test库,然后添加到右侧

设置表(库)名映射规则
点击添加目标表名规则,设置目标表名规则为:full_increment_${db_table_name_src_transed}

可以使用的内置变量有:
${db_table_name_src_transed}:“源表名和目标表名转换规则”中的转换完成之后的表名。
${db_name_src_transed}:“和转换规则”中的转换完成之后的。
${ds_name_src}:源数据源名。
步骤五:设置目标表
设置“时间自动分区设置”为非分区表

然后刷新源表和MaxCompute表映射
然后点击下一步
步骤六:设置表粒度同步规则
Base表Merge设置:
每张表的实时同步数据会在其全量离线任务完成后,实时的写入MaxCompute(Log表),然后会经过拆分(Split)变为Delta表,最后再与Base表进行合并(Merge),最终结果会写入Base表中。默认情况下会根据用户在上一步中指定的MaxCompute(ODPS)时间分区来做Merge,例如用户指定的分区是“天”,则会每天进行一次merge,也就意味着Base表的数据更新需要等到第二天。但是由于每个表的大小不一样,所以全量离线同步任务完成的时间有先后,如果用户想指定某些表在完成全量离线同步之后提早进行merge动作,以便及时获得最新的Base表数据,那么用户可以在本页中进行设置。
全量任务离线任务已经完成后,将最新实时同步的结果Merge进入Base表中
按小时独立:每一小时进行一次merge动作。
按天独立:每一天进行一次merge动作。
按分区周期:按照maxcompute表的分区间隔进行merge动作,前提是上一个周期的merge已经完成。
这里修改为按天独立,点击下一步

步骤七:设置表粒度同步规则
对于关系型数据的实时同步,其原始实时信息会包含DDL操作,此处可以设置针对于这些DDL消息同步到目标表时的操作。
【注意】此处策略仅仅是本任务初次启动时的规则,此后用户可以在对应的实时任务运维页面中,通过停止任务,修改DDL规则,再启动的方式,应用新的DDL策略。
保持默认即可,点击下一步

步骤八:运行资源设置
这里可以修改资源组
连通性测试没有问题后,勾选立即执行,完成配置
此时会生成两个任务,一个离线,一个实时。离线用来同步全量任务,而实时用来同步增量任务。
任务列表中也可以查到刚刚创建的任务
在ODPS中即可查看结果:
select * from dwhmcx.full_increment_student_list;
如果任务需要停止,则需要到运维中心的实时同步任务中进行停止。

相关文章:
Flink-DataWorks第四部分:数据同步(第60天)
系列文章目录 2.4.2 DataStudio侧实时同步 2.4.3 数据集成侧同步任务 文章目录 系列文章目录前言2.4.2 DataStudio侧实时同步2.4.3 数据集成侧同步任务 前言 本文主要详解了DataWorks的数据同步,为第四部分: 由于篇幅过长,分章节进行发布。…...
go post请求,参数是raw json格式,response是固定结构。
在Go语言中,使用net/http包可以很方便地发送HTTP请求,包括POST请求。当需要发送raw JSON格式的参数时,通常会使用encoding/json包来将Go的结构体序列化为JSON字符串,然后使用http.NewRequest函数创建请求,并通过http.C…...
国产开源大模型都有哪些?
随着ChatGPT引领的大模型热潮,国内的公司开始相继投入研发自己的人工智能大模型,截止到2023年10月,国产公司的大模型有近百个,包括一些通用大模型,比如百度的文心一言,也有特定领域的专用大模型,…...
基于Hadoop的超市进货推荐系统设计与实现【springboot案例项目】
文章目录 有需要本项目的代码或文档以及全部资源,或者部署调试可以私信博主项目介绍系统分析系统设计数据表设计表4-1:关于我们表4-2:用户表4-3:管理员表表4-4:token表表4-5:系统简介表4-6:收藏…...
ChatGPT能从这几个方面提升学术论文质量
学境思源,一键生成论文初稿: AcademicIdeas - 学境思源AI论文写作 写作和编辑高质量的学术论文是一项具有挑战性的任务。随着人工智能技术的进步,ChatGPT作为一种强大的语言生成工具,正逐渐成为提升论文质量的得力助手。从头脑风…...
Python3的安装及基础指令
Day 20 基础语法 1、环境:python2内置,安装并使用python3,最新版3.12版可以使用源码安装 # 查看python版本号 [rootpython ~]#yum list installed|grep python [rootpython ~]#yum list installed|grep epel [rootpython ~]# yum -y …...
使用Spring与JDK动态代理实现事务管理
使用Spring与JDK动态代理实现事务管理 在现代企业级应用开发中,事务管理是一项关键的技术,它可以保证一系列操作要么全部成功,要么全部失败,从而确保数据的一致性和完整性。Spring框架提供了强大的事务管理能力,但有时…...
服务器硬件及RAID配置
服务器及 RAID 磁盘阵列介绍 RAID0 俗称 “ 条带 ” ,它将两个或多个硬盘组成一个逻辑硬盘,容量是所有硬盘之和,因 为是多个硬盘组合成一个,故可并行写操作,写入速度提高,但此方式硬盘数据没有冗余&#…...
【经验总结】ShardingSphere5.2.1 + Springboot 快速开始
Sharding Sphere 官方文档地址: https://shardingsphere.apache.org/document/current/cn/overview/maven仓库:https://mvnrepository.com/artifact/org.apache.shardingsphere/shardingsphere-jdbc 官方的文档写的很详尽到位,这里会截取部分…...
基于Golang实现Kubernetes边车模式
本文介绍了如何基于 Go 语言实现 Kubernetes Sidecar 模式,并通过实际示例演示创建 Golang 实现的微服务服务、Docker 容器化以及在 Kubernetes 上的部署和管理。原文: Sidecar Pattern with Kubernetes and Go[1] 在这篇文章中,我们会介绍 Sidecar 模式…...
TCP 通信全流程分析:从连接建立到数据传输的深度探索
目录 一、TCP报头 二、三次握手 三、数据传输 四、四次挥手 本文通过一次TCP通信过程的分析来学习TCP协议 一、TCP报头 如图是一份TCP报文的报头,标准报头是20个字节,还可带有选项报头,也就是TCP报头的最小长度是20字节。以下是对报头的各…...
4、提取H264码流中nalu
H264的NALU提取 1、nalu单元 定义nalu的存储单元,ebsp用来存储原始的包含起始码(annexb格式)的原始码流,sodb存储去除防竞争字节后的码流,prefix是3或4字节 nalu_def.h // nalu_def.h #pragma once#include <cs…...
哈佛大学单细胞课程|笔记汇总 (二)
哈佛大学单细胞课程|笔记汇总 (一) (二)Single-cell RNA-seq data - raw data to count matrix 根据所用文库制备方法的不同,RNA序列(也被称为reads或tag)将从转录本((10X Genomic…...
java中抽象类和接口的区别
文章目录 接口和抽象类的区别一、定义的区别1、抽象类2、接口 二、使用场景的区别1、抽象类2、接口 三、使用案例1、抽象类2、接口 接口和抽象类的区别 一、定义的区别 1、抽象类 关键字: abstract 是模棱两可的,似是而非的,无法给出具体明…...
Spring Boot - 在Spring Boot中实现灵活的API版本控制(下)_ 封装场景启动器Starter
文章目录 Pre设计思路ApiVersion 功能特性使用示例配置示例 ProjectStarter Code自定义注解 ApiVersion配置属性类用于管理API版本自动配置基于Spring MVC的API版本控制实现WebMvcRegistrations接口,用于自定义WebMvc的注册逻辑扩展RequestMappingHandlerMapping的类…...
EasyCVR视频转码:T3视频平台不支持GB28181协议,应该如何实现与视频联网平台的对接与视频共享呢?
EasyCVR视频管理系统以其强大的拓展性、灵活的部署方式、高性能的视频能力和智能化的分析能力,为各行各业的视频监控需求提供了优秀的解决方案。 T3视频为公网HTTP-FLV或HLS格式的视频流,目前T3平台暂不支持国标GB28181协议,因此也无法直接接…...
Spring统一处理请求响应与异常
在web开发中,规范所有请求响应类型,不管是对前端数据处理,还是后端统一数据解析都是非常重要的。今天我们简单的方式实现如何实现这一效果 实现方式 定义响应类型 public class ResponseResult<T> {private static final String SUC…...
SqlServer公用表表达式 (CTE) WITH common_table_expression
SQL Server 中的公用表表达式(Common Table Expressions,简称 CTE)是一种临时命名的结果集,它在执行查询时存在,并且只在该查询执行期间有效。CTE 类似于一个临时的视图或者一个内嵌的查询,但它提供了更好的…...
常见中间件漏洞
Tomcat CVE-2017-12615 1.打开环境,抓包 2.切换请求头为 PUT,请求体添加木马,并在请求头添加木马文件名 1.jsp,后方需要以 / 分隔 3.连接 后台弱口令部署war包 1.打开环境,进入指点位置,账户密码均为 tomcat 2.在此处上传一句话…...
elasticsearch的学习(二):Java api操作elasticsearch
简介 使用Java api操作elasticsearch 创建maven项目 pom.xml文件 <?xml version"1.0" encoding"UTF-8"?><project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi…...
hdl_localization实战:在ROS Melodic下,如何不依赖IMU实现16线激光雷达的稳定定位?
无IMU环境下16线激光雷达的hdl_localization实战指南 在机器人自主导航领域,定位系统是核心组件之一。传统方案通常依赖IMU(惯性测量单元)与激光雷达的融合,但在实际工程中,IMU数据可能存在噪声大、校准困难或硬件缺失…...
实战指南:基于kimi与快马平台开发电商库存预警管理系统
最近在做一个电商后台管理系统时,遇到了库存预警的需求。传统开发方式需要从零开始写大量代码,但通过InsCode(快马)平台的Kimi模型,我快速实现了这个功能。下面分享具体实现过程: 需求分析 电商库存管理最关键的就是实时掌握库存…...
引领RFID电子标签打印新时代,打造标识打印系统新标杆
在当今快速发展的数字化时代,RFID电子标签凭借其非接触式数据读取、大容量存储以及高可靠性等优势,在众多领域得到了广泛应用。而HCreateLabelView 标识打印系统作为上海平宇码创科技自主研发的核心产品,紧密贴合这一趋势,为RFID电…...
5分钟部署!《崩坏:星穹铁道》全自动助手终极指南
5分钟部署!《崩坏:星穹铁道》全自动助手终极指南 【免费下载链接】March7thAssistant 崩坏:星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 你是否每天花费大量时间在《崩坏:…...
CVPR2025 | 对抗样本攻防前沿:从基础理论到多模态安全新挑战
1. 对抗样本攻防基础理论演进 对抗样本研究最早可以追溯到2013年Szegedy等人的开创性工作,他们发现通过在图像中添加人眼难以察觉的扰动,就能使深度神经网络产生错误分类。这个发现揭示了机器学习模型在输入空间中的脆弱性,也开启了对抗样本研…...
从零到一:手把手教你用TruckSim搭建你的第一辆虚拟牵引车模型
从零到一:手把手教你用TruckSim搭建你的第一辆虚拟牵引车模型 第一次打开TruckSim时,面对密密麻麻的参数和复杂的界面,很多新手会感到无从下手。作为一款专业的商用车动力学仿真软件,TruckSim确实有一定的学习门槛,但掌…...
Maya Arnold前台渲染无响应问题排查与解决
1. Maya Arnold前台渲染无响应问题排查指南 最近在Maya中使用Arnold渲染时,不少朋友都遇到了前台渲染无响应的问题。点击渲染按钮后,Render View窗口毫无反应,就像什么都没发生过一样。这种情况在动画场景整合阶段尤其常见,我自己…...
【Hot 100 刷题计划】 LeetCode 42. 接雨水 | C++ 动态规划与双指针题解
LeetCode 42. 接雨水 | C 动态规划与双指针双解法题解 📌 题目描述 题目级别:困难 (Hard) 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,…...
Sony-PMCA-RE:索尼相机自定义功能解锁与固件安全操作指南
Sony-PMCA-RE:索尼相机自定义功能解锁与固件安全操作指南 【免费下载链接】Sony-PMCA-RE Reverse Engineering Sony Digital Cameras 项目地址: https://gitcode.com/gh_mirrors/so/Sony-PMCA-RE 索尼相机逆向工具Sony-PMCA-RE是一款强大的开源工具ÿ…...
告别终端断开烦恼:nohup命令的完整使用指南(含日志管理技巧)
告别终端断开烦恼:nohup命令的完整使用指南(含日志管理技巧) 你是否遇到过这样的场景:在服务器上启动一个耗时任务,突然网络波动导致SSH连接断开,所有进度前功尽弃?作为开发者,这种经…...
