数据导入与导出(五)|学习笔记

本文涉及的产品
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 快速学习数据导入与导出(五)

开发者学堂课程【PolarDB-X 开源系列课程数据导入与导出(五)】学习笔记与课程紧密联系,让用户快速学习知识

课程地址https://developer.aliyun.com/learning/course/1032/detail/15143


数据导入与导出(五)

五、Future Plan(CDC在未来的一些计划和当前正在做的事情)

image.png

目前正在work in progress的一些功能,目前全局Binlog还不支持Gtid,我们当前内部已经完成立项,正在做。有了Gtid之后可以实现MTS的这样的复制能力。MTS Gtid有感兴趣的同学可以去看一下MySQL的相关资料有了Gtid之后多线程并行复制可以达到非常高的性能基准,这个能力等开源之后,我们会组织新一轮的讲解有感兴趣的同学敬请期待

Binlog-XX就是扩展能力,我们会做多流,因为全局Binlog在大规模集群下边还是有一定的性能瓶颈的比如说有上百个DN节点的时候,那做全局Binlog可能会有性能的瓶颈。如果延迟还比较高时候需要引入多流多流,我们内部目前已经完成了全链路的调试后边大概会在今年下半年的时候做一个开源,到时候大家可以去体验一下。

这边还有一个Replica-X,有三个的核心特性,一个是replica,刚才我们演示的这个功能,也都是大家消费这个单流的Binlog,有了多之后,内核原生的会支持多流复制。然后还有就是我们Replica-X这块会支持这个change master with full mode这样的模式,这是一个扩展功能,就是说刚才演示的那些功能都是实时增量的消费这个full mode功能就是执行完这个指令之后,我们会做一个全流程的全能力的数据同步,会做数据的全量同步,比如说上游是一个MySQL,我们会做全量的数据同步,会做全量的数据校验,然后再拉起增量,最终再做数据的逆向的同步,之后来做一个完备的全能力的数据迁移的能力,大概也是会在下半年的时候有能力的输出。如果有感兴趣的同学,其实也可以去翻一翻我们的源码,参与一下共建也都是可以的。

对full mode的这种是和flink的CDC迁移是类似的,使用形态上可能会比flink的CDC更简单一些。下边是一个全镜像复制这个复制能力就是说我们会完PolarDB-X的全镜像复制能力,细心的同学应该可以看到刚才演示里面的全局Binlog那个DDL,比如我们执行了一个电表的操作之后,这张表是一个分区表,但是其实它目前在全局Binlog里边呈现出来的是一个单表的形态。如果基于这样的能力,我们做PolarDB-X之间的这种同步其实是不行的,因为两个PolarDB-X之间同步,我肯定要保证两边的表结构都是一样的,上游是一个分区表,下游不能变成一个单表,目前这个能力也是正在构建过程中,我们会把PolarDB-X的私有DDL以某一种形式来保存到全局Binlog里边通过Replica来消费私有的DDL,从而能实现两个PolarDB-X之间的全镜像的全能力的单向或者双向复制,以满足异地多活异地栽备这样的需求,这个能力可能会更延迟一些,大概可能会在明年的一季度来输出。

image.png

这是一个prospect先前瞻性的留一个彩蛋这就是我们的多流的形态后边会有这样的输出。我们会输binary stream这样的命令然后会有show master status with这样的命令就是分装流之后每个流对应的都是一份Binlog。所以说,后边我们在消费多流的时候,大家到时候会感受到也是非常简单操作,只需要做几个预先的简单的命令最终拿到某个流的原数据信息之后消费每个流的时候适合单机MySQL那种消费的也是完全一致的给大家留彩蛋,等输出的时候可以去体验,敬请期待

这边是几篇知乎文章有感兴趣的同学想更深入地了解原理,可以去看一下这些文章。

中间是这堂课云起实验室的课后作业如何将PolarDB-X与大数据系统互通,这个实验室内容不在本次的演示里边,但是里面的这个操作步骤是非常全的大家可以登一下这个实验室扫一下码然后去实际操作一下PolarDB-X下游是怎么和大数据互通的,有一个更直观更深入的认识。右边是老师个人的微信,如果有同学搞中间件或者说搞数据同步,或者搞实时计算平台这些东西老师之前也都有过一些研究和项目经验,如果有同学深入地交流可以加我的微信,我们线下可以做进一步地沟通

新增DN的时候数据漂移也是基于分布来搞的其实刚才演示里边 执行的是一个update SQL,这个SQL在内部会把它拆解,然后会保证在一个事务当中操作。

打开云起实验室看一下,

image.png

可以看到云起实验室第三期,这个课后作业就是如何将PolarDB-X与大数据系统互通如果之前有参加过前两次的分享,流程会更熟悉一些。

image.png

大家进入后可以创建资源,创建完成后可以按照实验的步骤一步步操作,最后就可以把上游式PolarDB-X下游是大数据系统的这样一个系统搭建起来,这里面用到了一些技术,比如消费PolarDB-X的Binlog用的是canal,消费完后会把数据同步到一个click house里边,通过这个click house做一个数据的导入。

大家去操作一下,可以有一个更深入的理解。

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
SQL 算法 关系型数据库
数据导入与导出(四)|学习笔记
快速学习数据导入与导出(四)
数据导入与导出(四)|学习笔记
|
Oracle 关系型数据库 MySQL
数据导入与导出(二)|学习笔记
快速学习数据导入与导出(二)
数据导入与导出(二)|学习笔记
|
SQL 搜索推荐 算法
数据导入与导出(三)|学习笔记
快速学习数据导入与导出(三)
数据导入与导出(三)|学习笔记
|
SQL 运维 关系型数据库
|
SQL Oracle Cloud Native
|
SQL 算法 关系型数据库
|
开发者
数据导入与导出(一)|学习笔记
快速学习数据导入与导出(一)
|
SQL 关系型数据库 MySQL
【笔记】用户指南—数据导入和导出—使用mysqldump导入导出数据
本文介绍了通过mysqldump工具将PolarDB-X数据导入导出的几种常见场景和详细操作步骤。 PolarDB-X支持MySQL官方数据导出工具mysqldump。mysqldump命令的详细说明请参见MySQL 官方文档。
242 0
|
canal 关系型数据库 MySQL
【笔记】用户指南—数据导入和导出—使用DTS导入和导出数据
PolarDB-X提供丰富的数据导入和导出方式,以保持与其他数据系统的互通。本文主要介绍通过DTS导入导出数据的方式。
187 0
|
SQL 关系型数据库 MySQL
【笔记】用户指南—数据导入和导出—使用程序进行数据导入
本文将介绍如何通过编写代码的方式,将导入数据到PolarDB-X中。
148 0