《2018年北京银行全栈式Scale-out系统架构建设实践.pdf》由会员分享,可在线阅读,更多相关《2018年北京银行全栈式Scale-out系统架构建设实践.pdf(29页珍藏版)》请在三个皮匠报告上搜索。
1、GW风险防控交易处理服务治理运营管理云计算人工智能区块链分布式虚拟现实VS应用分布式数据分布式l 分布式数据库的一致性与可用性矛盾l 微服务架构的敏捷开发与复杂运维矛盾开启转账事务登记簿插入意向转账记录借方扣款更新登记簿流水更新登记簿流水插入流水记录借方信息 插入流水记录贷方信息更新登记簿流水贷方扣款更新登记簿流水检验贷方信息是否合法提交事务检验借方信息是否合法更新登记簿流水断点 A断点 B断点 C对银行现有系统运行中的交易进行分析之后,按照发生频度、使用范围选取典型的交易场景,利用开源框架,把交易从封闭系统迁移到开放平台,形成“标准化交易组”。针对银行实际场景,对数据库进行相同规模、相同逻辑
2、、相同粒度的访问、操作。我行自主提出了一套“分布式事务数据库评测指标”,将分布式事务数据库能力进行了分解,成为一项项具体的指标,使得评测标准更加具体化,评测结果更加客观化。标准化交易组 与 分布式事务数据库评测指标l 读写分离l 负载均衡l 强一致性l 数据重分布个性化功能数据库支持兼容性l 高可用l 容错机制l 超时处理l 主备同步l 异地灾备l 备份/恢复支持l 平台支持l SQL兼容/复杂语法支持l 在线扩容l 查询优化l 透明性l 批处理性能l 异构数据库传输l 安装升级l 运维管理l 角色划分l 系统分析算法性能可靠性安全备份功能测试性能测试TPS指标leader副本集群跨城网络无l
3、eader副本集群北京IDC1两副本北京IDC2两副本西安IDC3一副本同城网络跨城网络存储实例存储实例数据分片1数据分片2数据分片3数据分片nRaft组组存储实例存储实例数据分片1数据分片2数据分片3数据分片n存储实例存储实例数据分片1数据分片2数据分片3数据分片n存储实例存储实例数据分片1数据分片2数据分片3数据分片n存储实例存储实例数据分片1数据分片2数据分片3数据分片n计算层、管理层北京西安延时为17ms采用此种部署模式的SQL平均延时为1.2ms,.95延时为5ms左右多副本强一致性协议保障可靠数据持续在线主副本选举(带*号副本)成员变更日志复制存储引擎1存储引擎2存储引擎3存储引擎
4、4存储引擎5副本1*副本2副本3副本1副本2*副本3副本1副本2副本3*条件:任何分布式NewSQL云数据库中的数据变更需要同步更新到多数派副本中,才认为操作成功更新存储引擎1中的主副本1数据,只有另外两个副本1有一个同步更新,才认为操作成功结论:多数派中保存最新数据,只要多数派存活,即可对外服务副本1副本2副本3副本1*副本2副本2副本3副本1副本3副本1新增服务器52.将副本1的leader迁移到服务器2服务器1服务器2服务器3服务器43.复制副本1到服务器54.将副本1服务器1上删除1.新增服务器5加入NewSQL云数据库网络副本:副本可以理解为全量数据的一份子数据,图中示例为三副本模式
5、图中副本1+副本2+副本3为一份全量数据例如全量数据为record1record6,其中一种划分模式即可为:副本1(record1-record2),副本2(record3-record4),副本3(record5-record6)主副本:提供对外服务的副本解锁版本控制加锁版本控制原子操作传统分布式系统事务分布式NewSQL数据库事务分布式存储分布式事务执行分布式事务执行分布式事务提交分布式存储分布式事务协调中心1.提交数据2.数据路由3.数据确认3.数据确认迈向金融级分布式事务提交1.主锁声明2.预写数据1.副锁声明2.预写数据主锁解锁前主锁解锁后副本同步/异步解锁data1data2数据实
6、质变化1.处理主锁记录2.处理副锁记录3.主锁解锁4.副锁解锁键值余额:数据余额:锁信息余额:版本借方账户TS1:10TS2:TS3:5TS1:TS2:TS3:PrimaryTS1:TS2:DataTS1TS3:贷方账户TS1:2TS2:TS1:TS2:TS1:TS2:DataTS1键值余额:数据余额:锁信息余额:版本借方账户TS1:10TS2:TS1:TS2:TS1:TS2:DataTS1贷方账户TS1:2TS2:TS1:TS2:TS1:TS2:DataTS1键值余额:数据余额:锁信息余额:版本借方账户TS1:10TS2:TS3:5TS1:TS2:TS