《平安银行分布式单元架构的运维实践.pdf》由会员分享,可在线阅读,更多相关《平安银行分布式单元架构的运维实践.pdf(27页珍藏版)》请在三个皮匠报告上搜索。
1、平安银行分布式单元化架构的运维实践李中原 平安银行数据库团队大纲平安银行信用卡大机下移项目01分布式单元化数据库的弹性扩容03分布式单元化架构的深度解析04分布式单元化数据库自动化运02信用卡由大机下沉到分布式架构的核心系统基于业务、技术和战略要求,为支持信用卡业务快速、灵活、弹性、创新的发展需求,信用卡中心于2018年12月启动信用卡新核心系统建设项目,并按计划,于2020年10月31日实现新核心投产上线。1.亿级卡量6.成本控制2.精准服务与风控4.性能突破3.快速创新5.自主可控快速创新新核心建设背景新核心建设历程单元化的部署架构4DSU1DSU1DSU1DSU2DSU2DSU2DSU3
2、DSU3DSU3DSU4DSU4DSU4DSU5DSU5DSU5DSU6DSU6DSU6DSU7DSU7DSU7DSU100DSU100DSU100.DSU1DSU2DSU3DSU4DSU5DSU6DSU7DSUnDSU100IDC-1IDC-2IDC-3单个单元数据分片整体设计5 分片设计方案:按客户纬度分片:分片内业务实现自包含;DLS根据GNS的数据路由表来决定哪个分片完成业务;DLS高速缓存GNS的数据,GNS的所有更新需强同步给DLS;同一个客户的客户号、帐号、卡号需映射到同一个DSU号;分片规则:数据分片以客户纬度生成映射,支持分片权重;DSU-1交易授权用卡业务发卡业务批量账务D
3、SU-N交易授权用卡业务发卡业务批量账务GNS客户n分片设计路由更新服务客户号HASH分片有权重.分片策略分片路由表客户 (客户,分片X)帐号 (客户,分片X)卡号(客户,分片X)PID (客户,分片X)DLS强同步客户1DSU之外-聚合查询、分析类、归档等需求的设计6连接与计算调度全局管理 OLTP应用db1-sdb2-sdb3-sdb1-mdb2-mdb3-m聚合数据Sharding-TDSQL OLAP应用定义查询接口的SLAbinloghadoopsqoopmq、kfk全量、增量、准实时分布式单元化数据库自动化运维平安银行信用卡大机下移项目01分布式单元化数据库的弹性扩容03分布式单元
4、化架构的深度解析04分布式单元化数据库自动化运维02单元化部署架构8n两地三中心架构两地三中心一主五备n同城灾备模式RTO 40s,90s,RPO=0跨机房“强同步”,保障金融数据一致性n异地灾备模式 RTO=30mins,RPO=30minsn同城一键切换聚合库全量DSU异步汇聚强同步proxymasterslave异步复制生产强同步复制强同步复制异步复制proxymasterslave同城proxymasterslave灾备单元化架构对数据库运维的挑战集中式数据库运维分布式数据库运维单元化架构对数据库运维的基本要求数据库和相关组件无中心化节点每个单元一致的标准化运维数据库和应用都需要能够快
5、速故障自愈要避免单个单元的故障蔓延分布式单元化数据库的运维工具查询工具发布工具数据比对容量平台个别DSU查询SQL审核生产-测试对象结构对比容量管理全量DSU查询风险管控生产单元之间比对趋势预测查询数据所在DSU灰度发布数据归档查询数据脱敏DML发布回滚查询工具防异常设置分布式单元化数据库的运维工具强同步方案切换 隔离IDC间网络故障 过程中业务无感主备同城切换 IDC之间切换最快1分钟以内 同城IDC切换RPO=0 单DSU 只需4-5秒流量切换 LVS、PROXY流量切换 故障的自动快速隔离 集群扩缩容计算资源一键扩容 应对突发活动或者大流量多源同步管理 同步故障一键处理 任务模版一键管理
6、容灾演练 随时可以进行无业务流量的容灾演练 真实业务流量的容灾切换分布式单元化的数据库运维通过查询工具、发布工具、数据比对管住风险,做到一致性运维通过容量平台管住数据库的趋势,确保系统稳定高效通过自动化运维工具屏蔽个人经验对紧急故障的处理时效影响分布式单元化数据库运维稳定的基石:1、解决数据库的慢查询,并防止慢查询蔓延2、保障数据量是在系统健壮运行的范围分布式单元化数据库的弹性扩容平安银行信用卡大机下移项目01分布式单元化数据库的弹性扩容03分布式单元化架构的深度解析04分布式单元化数据库自动化运维02分布式单元化数据库的扩容Scale OutOutScale UpDSU横向扩展:n每个DSU
7、是采用完全相同架构进行部署,随着业务规模的发展,可以增加DSU数量,提高系统容量和处理能力。纵向扩容:n单个DSU内部,配置仅占 整机资源n对于临时性营销活动带来的交易量,可根据需要,增减应用节点和DB配置。分布式单元化数据库的扩容解决问题的最好方法是:让问题尽可能不发生把涉及到交易的和的数据库进行,以提升其纵向扩容的空间联机和批量数据库分库在对每个DSU做容量规划时,需要,以备可能出现瞬间热点数据问题DSU容量预留Buffer利用数据库硬件的技术发展,后续可以来承载数据库瓶颈数据库硬件纵向扩容把有数据库负载瓶颈的,但这种方案存量数据迁移先防:以防为主后治:以治为辅分布式单元化横向扩容的逻辑
8、扩容方式:存量节点满足性能要求数据由DLS通过数据路由表,决定归属哪个分片扩容不涉及存量数据迁移,增量数据访问新增节点分片扩容依据分片的实际资源使用和容量指标设定扩容阈值(比如40%),根据阈值启动扩容不涉及存量数据,可以不停机横向扩展存量客户增量客户DLS(DSU路由)新核心分片路由表GNS(客户映射)更新路由表DSU_1应用集群客账卡数据库DSU_2应用集群客账卡数据库DSU_3应用集群客账卡数据库DSU_4应用集群客账卡数据库DSU_5应用集群客账卡数据库DSU_6应用集群客账卡数据库DSU_(n-1)应用集群客账卡数据库DSU_n应用集群客账卡数据库强同步分布式单元化架构的深度解析平安
9、银行信用卡大机下移项目01分布式单元化数据库的弹性扩容03分布式单元化架构的深度解析04分布式单元化数据库自动化运维02分布式单元化架构的优势-之一99.999%系统可用率对外业务不中断新核心:同城双活机房生产机房同城机房自动切换l 主备服务器自动切换l 切换期间无需停服应用系统不中断新核心:多服务器l 故障不停服:任一服务器故障,系统不中断,其它服务器继续提供服务数据服务不中断新核心:数据库主备冗余l 数据不会丢失,数据库服务不中断主备备备同步分布式单元化架构的优势-之二基础架构的自主可控数据库和应用层的自主可控业务上的完全自主可控分布式单元化架构的优势-之三搭积木式即插即用理论上无限的扩展
10、能力轻松应对任何促销分布式单元化架构的弊端-之一应用重构改造工作量比较大应用层和框架层的改造监控的改造和告警的收敛运维工具的改造分布式单元化架构的弊端-之二过度单元化的问题上下游系统业务不均衡的被动单元化数据库层或者应用层的资源浪费或者使用率低分布式单元化架构的弊端-之三单元的失控和故障的蔓延单元容量的过度膨胀单元性能和吞吐量下降避免单元的故障向全部单元蔓延分布式单元化架构的关键单元大小的设计分布式事务的管理自动化运维所有节点去中心化1、单元过大容易出现扩容和拆分2、单元过小会造成资源的浪费1、配置中心2、应用层分布式3、中间件集群化4、数据库5、消息中心1、业务逻辑上规避2、架构层支持3、应用层支持1、分布式架构运维的灵魂2、应用从故障中恢复的能力3、数据库从故障中恢复的能力单元化架构的设计适用场景可以某种纬度进行拆分的系统,如卡、帐、客,我行信用卡A+就是这种架构可以按地域或者子公司进行拆分的系统,如按省份单元化,中国银行采用这种架构拆分后的单元内部能够做到业务自包含单元能够做到相对均衡Thank You!Thank You!