1、海量高并发数据库国产化改造及应用郑鸿健中国移动通信集团信息技术中心政企业务中心数据库专家、数据库架构师,主要负责数据库国产化在政企中心的落地数据库国产化的背景主流的数据库架构数据库国产化的挑战与探索未来展望数据库国产化的背景数据库国产化的背景数据库国产化战略要求核心技术要求:自主可控、安全可靠、高效开放业务要求业务高速发展单机数据库瓶颈根据国家某部门对央企系统信创替代工作要求,全面建成自主可控、安全可靠、高效开放的网信生态,破除“卡脖子”风险隐患,实现央企在国际产业链高价值环节强话语权。主流的数据库架构主流的数据库架构红色表示共享资源蓝色表示无共享资源DBDBDBDiskDiskDiskPro
2、xyShared-NothingDB分布式存储DBDBShared-StorageDBDiskShared-EverythingShared-Everything数据库采用集中式数据库3+2部署主set:1主2备跨同城3IDC部署备set:1主1备异步复制架构优点1、简单的主备模式,方案成熟稳定2、同城IDC间RPO=0,RTO秒级3、应用层实现多活架构缺点1、无法通过set拆分的业务容易达到瓶颈2、跨set事务复杂(但业务上极少使用)3、成本较高Shared-Storage负责SQL解析、事务等,无状态,可扩展计算The log is the database基于物理日志复制采用Quorum
3、机制确保数据保存多份存储Shared-NothingGTM全局协调协助分布式事务管理,包括生成、释放全局事务ID、维护活跃GTID的快照等Proxy/计算节点分布式优化、执行具体的分布式计划、事务控制、存储节点负载均衡等。存储:MySQL(二开)底层基于MySQL进行二开Shared-Nothing调度:PD(Placement Driver)负责各副本的迁移调度,集群整体负载的均衡,数据收集等计算:TiDB负责将库表中的数据映射至TiKV、SQL解析、运算制定及优化执行等存储:TiKV基于raft协议解决副本间的一致性及可用性小结传统单机数据库方案,目前绝大数公司首选扩展性:通过应用层垂直、
4、水平拆分实现一致性:半同步Shared Everything云原生数据库,主要有Aurora、PolarDB扩展性:计算节点横向扩展存储节点依赖分布式存储一致性:Paxos/RaftShared Storage新兴的数据库,发展迅猛,国内主要为TiDB、OB扩展性:接入层横向扩展数据层添加节点后动态均衡一致性:Paxos/RaftShared Nothing(NewSQL)单机数据库自然演进,业内主要有TDSQL、DRDS等扩展性:通过Range、Hash等方案进行sharding一致性:半同步MGR(Paxos)Shared Nothing(类Proxy)数据库国产化挑战与探索国产化改造流程
5、选型测试同步改造灰度上线测试数据库测试:功能测试性能测试应用改造测试:分片兼容性应用改造功能改造兼容性改造切换平滑切换监控告警数据库选型架构选型:集中式&分布式数据库选型:GoldenDB、OB、TiDB数据同步全量同步增量同步灰度放量灰度切读灰度切写保障回流保障全局监控数据回流一键回切上线前-选型稳定成本效率生态容灾方案、响应耗时RPO、RTO语法兼容性、改造成本软硬件成本单实例吞吐量、事务性能扩展性监控告警、数据同步数据校验、异常分析平滑上线前-测试01基础功能测试标准SQL语句测试分布式事务读一致性分布式事务写一致性计算节点扩缩容存储节点扩缩容管理节点扩缩容02可用性测试计算节点单点故障
6、存储节点单点故障管理节点单点故障同城单数据中心故障异地数据中心故障03可维护性测试备份恢复测试、数据误操作保护、滚动升级、用户权限管理、数据加密、安全连接、日志审计、监控 告警04性能测试SysBench测试、TPCC测试业务压测流量录制、回放线上灰度引流上线中-数据同步数据同步上线中-数据同步数据同步库表分析差异监控业务分析数据校验语法适配数据分治上线中-适配改造适配改造应用驱动程序、语法兼容、数据对象、工具脚本、API接口、SQL语法数据库数据分片、冷热分离、轻重隔离索引优化、读写分离上线中-适配改造弱化DB明