1、PostgreSQL中文社区第13届PostgreSQL中国技术大会聚焦云端创新汇聚智慧共享周振兴NineDataPostgreSQL中文社区实现复制与迁移的核心架构实现过程中常见的挑战与应对03小结&公司概述04概述PostgreSQL复制的挑战0102PostgreSQL中文社区目录contents01关于周振兴NineDataPostgreSQL中文社区PostgreSQL中文社区关于我:周振兴个博客:https:/联合创始&技术副总裁www.ninedata.cloudOracle ACE 性能MySQL 第三、四版译者2013、20222021今2021今20092021资深数据库专
2、家(曾花名“苏普”)PolarDB 产品管理总监淘宝DBA,去IOE核DBAPostgreSQL中文社区完整支持PostgreSQL的SQL开发个人版提升开发效率 企业版更安全与高效增量全量不停机的数据库迁移大规模的弹性扩缩容,应对突发业务变化企业级的数据库管理规范百个数据库规范、完整的数据库管理流程NineData x PostgreSQLPostgreSQL PostgreSQL中文社区NineData云原生智能数据管理平台应用开发者DBABI开发数据开发业务运营系统管理丰富的数据源、平台支持:RDBMS、NoSQL、数据仓库、大数据自建 IDC云厂商A自建 IDC数据仓库/大数据平台应用
3、消息队列搜索平台托管数据库(开源/自研/国产)自建数据库托管数据库数据复制数据库DevOps结构复制全量复制增量复制双向复制周期集成ETL结构对比全量对比增量对比SQL IDE导入导出可视化设计权限管控开发规范敏感数据管理SQL在线审核SQL离线审核SQL差异审核OnlineDDLOnlineDML变更备份数据追踪数据归档性能优化操作审计PostgreSQL中文社区数据库类型多数据库迁移、新的ETL国产化入仓/入湖/ETLBI分析实时营销基于多云的IT架构多云容灾混合云跨国用户体验跨区域数据访问就近访问容灾/多活业务连续性保障合规、数据保护业务微服务改造提升业务扩展性业务解耦数据流动是企业数据
4、架构的基础PostgreSQL中文社区“如何尽量减少对于业务的影响”是迁移与复制要考虑的关键因素之一。当数据规模非常大的时候,如数百亿时,应考虑最小化的业务影响下完成迁移数据流动面临多重困难01030204不停机的迁移多版本/环境支持长时间运行的链路,稳定性对于业务系统、运维团队都是至关重要的。但,由于上下游环境复杂,SQL语句(尤其是DDL)复杂,复杂对象等都可能影响链路的稳定性数据量大、链路运行时间久时,这个挑战会变得更大。(a)数千万、数亿、数十亿、数百亿等级别的数据迁移,要保障数据的绝对一致;(b)环境中多元化的场景,也让一致性变得困难数据一致性保障链路的持续稳定在一个环境中,可能存在
5、很多各版本,很多中环境。例如有PostgreSQL 9、MySQL 5.1等,也可能有Linux,也有Windows、Unix环境云时代,数据流动的新挑战(1)PostgreSQL中文社区数据流动面临多重困难01030204多数据源长地域、长周期链路在核心业务场景下,需要满足低延迟的复制,保障业务一致性。高性能,意味更少业务切换时间,更低的业务影响;在容灾、就近访问等常见下,也意味着业务本身的一致性多厂商互通高性能云时代,数据流动的新挑战(2)云厂商往往是“宽进严出”,对其他厂商的支持不足或功能非常简单,不满足用户需求,特别是在网络互联及通信案例上鲜有考虑。数据复制高度依赖数据库的参数配置、用
6、户权限、版本等因素,不同数据库类型还涉及到结构转换与数据类型转换,非常容易出错。在跨地域或跨境同步时,会面临各种网络状况,如何保证长链路的情况下数据稳定同步是一个非常困难的问题。MQOLTP数据库结构复制全量数据复制增量数据复制CDC结构数据对比AuroraNoSQL搜索数据仓库数据复制Kafka消息队列数据复制功能架构概述OLTP OLAP 之间的数据流动OLTP 消息系统/搜索等应用OLTP OLTP之间数据流动目标库预检查结构复制全量复制增量写入源库增量CDC读取消息队列数据复制技术架构概述(1)控制台 Co