ArchSummit全球架构师峰会北京站2017

中兴通讯首席架构师 钱煜明 - 打造金融级分布式数据库服务_部分1

金融环境下对分布式数据库要求极高,要求各种场景下在保证数据一致性前提下提供高性能,可扩展的数据服务。中兴与中信银行合作研发了面向金融的强一致分布式数据库并在多个业务系统成功上线,实际效果显示能够完美应对金融场景

1. 打造金融级分布式数据库服务   钱煜明   中兴通讯  首席架构师  
3. 钱煜明   中兴通讯  首席架构师   钱煜明,  中兴通讯首席架构师,  20年研发管理经验,曾历任北方电讯(加拿大)  ,   IBM(加拿大),  摩根斯坦利(美国)架构师及阿里巴巴平台技术总监,  兼任中科院 客座研究员,  东南大学,  南京邮电大学,  南京理工大学客座教授.  对于企业架构,  投资 银行技术架构,  互联网金融,  电商平台,  电信平台,  云计算,  大数据,  分布式数据库, 移动互联网,SOA等均有丰富经验.      现带领团队研发中兴通讯Golden系列数据服 务平台,包括GoldenData  大数据服务,  GoldenDB分布式数据库等,已在国内 多家银行及金融机构部署上线。  
4. •  金融数字化趋势与挑战   •  挑战1:分布式数据一致性   •  挑战2:分布式业务连续性   •  挑战3:分布式数据安全性   •  挑战4:服务可扩展性   •  金融行业应用实践  
5. 金融信息科技“十三五”规划指明发展方向   总体! ⺫⽬目标! 全⾯面推进⾦金融业信息化发展提质增效,积极⾯面对新兴技术带来的机遇与挑战,主动开展架构转型,建⽴立开放、弹性、⾼高效、安 全的新⼀一代银⾏行系统,深化信息科技治理成效,完善科技研发运维体系,强化信息安全和⻛风险管理,以信息科技引领创新发展、 转型升级,提升⽀支持实体经济发展能⼒力,促进普惠⾦金融⼤大发展,为社会和公众提供更加丰富、安全和便捷的⾦金融服务。! 信息科技治理! 有效性明显提升! • 构建信息科技治理机制评 价和持续改进机制! • 组织、制度、流程和⼈人⼒力 资源建设机制! • 科技与业务建⽴立成熟的伙 伴关系! • 优化数据治理、提升数据 服务、发挥数据价值! 信息科技服务! 能⼒力持续提升! • 构建绿⾊色数据中⼼心! • 推进运维⾃自动化和智能化! • 实现基础架构转型升级! • 建⽴立适应互联⺴⽹网业务场景 的软件开发过程体系! 科技成为引领创新的! 关键引擎! • 科技创新纳⼊入总体战略! • ⼤大⼒力推进“互联⺴⽹网+”、⼤大 数据等国家战略落地! • 构建银⾏行业互联⺴⽹网⾦金融⽣生 态! • 建⽴立银⾏行间和跨⾏行业的联 合创新! ⺴⽹网络和信息安全! 管控能⼒力显著增强! • 积极落实《国家⺴⽹网络空间 安全战略》! • 实现关键基础设施基本安 全、⻛风险可控! • 健全客户信息保护机制! • 建⽴立全⽅方位的安全态势感 知和防范应对机制! • 建⽴立银⾏行间⺴⽹网络安全协同 防护机制! 信息科技⻛风险管理! “三道防线”! 协同⽔水平持续提⾼高! • 明晰并落实“三道防线”的 协同机制! • 构建开发、运维、安全、 ⻛风险管理⼀一体化运营平台! • 建⽴立信息科技内部控制成 熟度评价机制! • 完善外包⻛风险管理体系! • 夯实业务连续性管理!
6. 分布式金融架构的理想世界 海量数据   平滑扩展   风险管控   数据安全   服务弹性   应对冲击   业务连续   快速部署   业务安全   数据容灾   高效运维   自动容错   开放金融   服务社会   降低成本   投资复用  
7. 数据服务架构的挑战   对数据库的⾼高并发,可扩展性要求! •  互联网金融服务带来高的瞬时数据库并 发负载,往往要达到万次/秒的读写请 求,要求数据服务能够线性扩展性能与 容量   数据服务业务连续性! •  多数据中心部署后,数据需要在灾难情 况下不丢数据,保持业务连续服务   01! 04! 02! 数据安全性! •  数据服务需要具备安全防护手段,防 止非法访问,篡改   03! 数据⼀一致性要求! •  受监管限制,金融行业需求与互联网应 用有差别,数据很多场景要求实时强一 致  
8. 中兴通讯金融分布式架构全景视图   PaaS解决方案   DevOps解决方案   大数据平台及   分布式数据库解 决方案   IaaS解决方案     统一运维解决方 案   安全解决方案   容灾和备份解决 方案   微模块数据中心/ IT硬件解决方案  
9. 面向金融的中兴通讯分布式数据库--GoldenDB   分布式数据库包括计算节点(前置中间件)、数据节点(DB)、全局事务管理器和管理节点四种组件,其中蓝 色背景的为有状态的组件,需要考虑容灾:   1、计算节点(前置中间件):提供SQL解析、优化、路由、结果汇聚、分布式事务控制等功能;   2、数据节点(DB):真正存储业务数据的组件,通过分库分表实现数据库能力的水平扩展;   3、全局事务管理器(GTM):分布式事务管理的重要组件;   4、管理节点(OMM与MDS):包括元数据管理、参数配置、其他三种组件的监控与管理等。   APP1   ODBC  /  JDBC   APP2   ODBC  /  JDBC   …   APPN   ODBC  /  JDBC   应用客户端    1、计算节点   (前置中间件)   DB  Proxy   DB  Proxy   …   DB  Proxy   3、全局事务管理器   GTM   2、数据节点   (数据库集群)   DB-M   DB-S   DB-M   DB-S   DB-M   DB-M   …   DB-S   DB-S   分布式数据库            4、管理节点       OMM     MDS     Meta  Data     Server       Proxy     Manager         Cluster     Manager  
10. •  金融数字化趋势与挑战   •  挑战1:分布式数据一致性   •  挑战2:业务连续性   •  挑战3:数据安全性   •  挑战4:服务可扩展性   •  金融行业应用实践  
11. 改进的分布式事务一致性--Sagar  模型   假设条件:  业务中正常情况只有极小比例事务会失败   分配全局事务ID 子事务处理 事务管理 器 参与者 子事务提交 参与者 自动补偿 事务管理 器 参与者 补偿确认 参与者 事务管理 器 参与者 参与者 分布式MVCC+GTM+乐观提交,完成分布式事务的全生命周期管理   n 保证各种异常场景下的数据一致性,彻底解决分布式数据库可能的脏读问题   n 自动构建事务回滚机制,从数据库日志中抓取对应的修改内容,并自动化生成补偿操作   n 在数据备份/恢复过程中,保证各全局事务组的操作统一执行或回滚    
12. 数据拆分/重分布过程一致性   hash(product_id) = 3170972965401 % 1024 = 537 0 127 128 256 383 384 512 639 640 768 895 896 255 511 767 1023 分库1 分库2 分库3 分库4 分库5 分库6 分库7 分库8 原分库1 原分库2 原分库3 原分库4
13. 强一致多副本复制技术   实现原理   1、数据高可靠采用DB主备多副本,主备数据复制采用快同步复制技术(在MySQL原生半同步 复制基础上改造),对DB进行分组管理,要求每个分组至少有一个备机返回响应。   2、服务高可用采用管理节点监控DB状态,管理DB的故障切换。   主机房   管理节点 (主)   同城备机房   管理节点 (主)   DB1 (主)   DB3 (备)   DB分组 1   DB分组 2   DB2 (备)   DB4 (备)   方案特点   1、方案成熟,在同城环境下数据复制性能提升明显;   2、支持DB分组管理,降低单点故障的影响,保障同城机房与主机房数据副本的一致性;   3、支持备机分类,优先在主机房内切换;   管理节点主备数据 复制     DB心跳上报     DB主备数据快同 步复制  
14. 元数据一致性   MDS read/write 主中心 本地 read/write MDS DB DB Paxos 同城中心 read/write DB MDS 采用Paxos技术,实现元数据存储 集群多写强一致 异地中心 DB MDS
15. 数据迁移一致性   GoldenDB S: Select 数据全量导出 增量数据抽取 条件数据抽取 一致性数据过滤 S 数据抽取 模块 EL 数据处理 模块 DB2 数据副本 数据交换平 台 E:Extract 数据过滤 格式转换 数据合并 数据压缩 T: Transfer 数据传输 数据重传 数据恢复 Kafka Spark/ Storm 流式数据分析 L: Load 数据转入 DB -> MQ DB -> DB DB -> 文件
16. 数据一致性比对工具   提供批量数据比对工具  (  分别批量checksum, 比较checksum值, 不一致则生成不 一致数据块单行checksum表进行逐行比对),  冲突数据根据事先规则进行一致性 修复或生成报告交给人工处理。   因目标库表结构与源端异构,需要按映射关系计算CheckSum值     manager 数据比对代理 DB1 数据比对代理 DB2 Zookeeper
17. •  金融数字化趋势与挑战   •  挑战1:分布式数据一致性   •  挑战2:业务连续性   •  挑战3:数据安全性   •  挑战4:服务可扩展性   •  金融行业应用实践  
18. 容灾多活架构   RPO=0      RTO<10秒  
19. 系统容错设计   客户端 异常! •  ⺴⽹网络异常! •  死链接! •  慢SQL! Proxy 节点异 常! •  Proxy当机! •  与DB断链! •  存储空间不⾜足! •  ⺴⽹网络故障! DB节 点异常! •  Master 失效! •  复制失效或降级! •  存储故障! •  ⺴⽹网络故障! •  事务状态不⼀一致! 管理节 点异常! •  元数据失效! •  ⾮非法访问! •  GTM异常! •  PM、CM等当机!
20. •  金融数字化趋势与挑战   •  挑战1:分布式数据一致性   •  挑战2:业务连续性   •  挑战3:数据安全性   •  挑战4:服务可扩展性   •  金融行业应用实践  
21. 多种数据备份策略   数据库备份   定时备份任务 管理   实时备份   新增定时备份 任务   修改定时备份 任务   备份记录   备份记录详细  
22. 安全运维   实时统计 逐级汇总 性能监控 统计 监控 超期删除 告警管 理 可视化查 询
23. 数据安全控制   客户端接入层   APP1   传输加密SSL   计算节点集群   白名单控制   链接实例控制   APP2   DB Proxy ! 数据库集群1   DB-M! DB-S! DB-M! DB-S! 后置中间件  Data  Manager   数据访问权限控制   主从复制   集群隔离   数据加密   国密加密   数据库集群n   DB-M! DB-S! 数据备份   同城双活   异地容灾   管理平台权限控制   管理服务模块   OMM Server...! 日志   监控   资源管理   授权  
24. 合规审计   提取敏感信息! 数据库异常! 应⽤用欺诈! ⾼高频查询! ⾮非正常授权! ⺴⽹网络⽩白名单! SQL防火墙
25. •  金融数字化趋势与挑战   •  挑战1:分布式数据一致性   •  挑战2:业务连续性   •  挑战3:数据安全性   •  挑战4:服务可扩展性   •  金融行业应用实践  
26. 容量在线扩容   APP   AP I  Database! ! ! 架构演进   APP   DRDC   APP  …   DRDC          前置中间件集群   DB Proxy 1! DB Proxy 2! DB Proxy …! 数据库集群1   DB-M! DB-S! DB-M! DB-S! 数据库集群2   数据库集群  …   DB-M! …   …   DB-S!
27. 性能可线性扩展   TPCC模型/ 万TPMC! 17.1! 1GROUP! 33.3! 2GROUP! 49.9! 3GROUP! 65.7! 4GROUP! 82.4! 5GROUP! 98.2! 6GROUP! 114! 7GROUP! 130! 8GROUP! GoldenDB理论上支持无限大的线性扩展。在TPCC模型下,使用普 通X86服务器:   1个安全组的组网下能达到17万;   5个安全组的组网下能达到82万;   10个安全组的组网下能达到160万;   性能近似线性,衰减少于7%。   145.6! 160.9! 9GROUP! 10GROUP! 93%   正比例扩展能达到93% 以上的性能