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

简介: 快速学习数据导入与导出(五)

开发者学堂课程【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做一个数据的导入。

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

相关文章
|
存储 算法 语音技术
振南技术干货集:znFAT 硬刚日本的 FATFS 历险记(3)
振南技术干货集:znFAT 硬刚日本的 FATFS 历险记(3)
|
监控
云监控
云监控
546 1
|
人工智能 安全 IDE
【AI帮我写代码,上班摸鱼不是梦】手摸手图解CodeWhisperer的安装使用
除了借助ChatGPT通过问答的方式生成代码,也可以通过IDEA插件在写代码是直接帮助我们生成代码。 目前,IDEA插件有CodeGeeX、CodeWhisperer、Copilot。其中,CodeGeeX和CodeWhisperer是完全免费的,Copilot是收费的,每月10美元。 下面我们来了解CodeWhisperer的安装和使用,如果你还想了解其他的可以在评论告诉我。
851 4
|
5月前
|
数据采集 负载均衡 NoSQL
抛弃自建代理池?深度评测隧道代理自动换IP背后的负载均衡架构
本文深度对比自建代理池与隧道代理:前者维护成本高、延迟大、并发易瓶颈;后者通过云端负载均衡实现“一次配置、自动换IP”,显著提升稳定性与扩展性。附Python实战评测,直观展现隧道代理优势。
425 1
|
9月前
|
存储 自然语言处理 安全
有没有免费的Agent工具推荐?2025年全攻略:从入门到精通,这篇就够了
面对重复工作、效率低下与预算不足,AI Agent工具成了解决职场痛点的新选择。本文实测推荐10款真正免费、安全好用的Agent工具,覆盖企业自动化、开发编程、内容创作等全场景,帮你打破“免费=鸡肋”偏见,轻松提升效率,零成本开启智能办公新时代。
2927 5
|
机器学习/深度学习 存储 分布式计算
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证(211)
本文探讨了Java大数据与机器学习模型在金融风险压力测试中的创新应用。通过多源数据采集、模型构建与优化,结合随机森林、LSTM等算法,实现信用风险动态评估、市场极端场景模拟与操作风险预警。案例分析展示了花旗银行与蚂蚁集团的智能风控实践,验证了技术在提升风险识别效率与降低金融风险损失方面的显著成效。
|
缓存 负载均衡 应用服务中间件
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇
通过使用Nginx的反向代理功能,可以有效地提高Web应用的性能、安全性和可扩展性。配置过程中需要注意不同场景下的具体需求,如负载均衡、SSL终止和缓存策略等。正确配置和优化Nginx反向代理可以显著提升系统的整体表现。
2525 20
|
存储 算法 C++
【c++丨STL】set/multiset的使用
本文深入解析了STL中的`set`和`multiset`容器,二者均为关联式容器,底层基于红黑树实现。`set`支持唯一性元素存储并自动排序,适用于高效查找场景;`multiset`允许重复元素。两者均具备O(logN)的插入、删除与查找复杂度。文章详细介绍了构造函数、迭代器、容量接口、增删操作(如`insert`、`erase`)、查找统计(如`find`、`count`)及`multiset`特有的区间操作(如`lower_bound`、`upper_bound`、`equal_range`)。最后预告了`map`容器的学习,其作为键值对存储的关联式容器,同样基于红黑树,具有高效操作特性。
779 3
|
存储 算法 安全
C 语言中的位运算:挖掘底层计算的高效力量
位运算是C语言中直接操作二进制位的一种技术,能高效处理底层数据,广泛应用于优化算法、硬件编程等领域,是掌握C语言高级特性的关键之一。