《2019年分布式数据库下5000亿+数据秒级响应的探索与实践.pdf》由会员分享,可在线阅读,更多相关《2019年分布式数据库下5000亿+数据秒级响应的探索与实践.pdf(27页珍藏版)》请在三个皮匠报告上搜索。
1、分布式数据库下5000亿+数据秒级响应的探索与实践首款入选Gartner数据库推荐报告的国产分布式数据库产品超过100家大型金融企业核心业务系统上线使用SequoiaDB巨杉数据库简介应用程序开发面临怎样的趋势?应用程序开发从烟囱式架构向分布式的转型应用前端数据库中间件微服务数据库微服务微服务微服务数据库微服务微服务微服务数据库微服务微服务传统架构向微服务转型应用前端数据库该如何应对微服务应用框架?数据库如何应对微服务应用框架集中式关系型数据库MySQLMySQLPGSQLS3对象存储分布式数据库MySQL实例MySQL实例PGSQL实例S3实例集中式存储 数据紧耦合 无法弹性扩张 单点故障碎
2、片化存储 数据碎片化 数据无共享 运维成本高分布式存储 微服务对应独立实例 物理分散存储 逻辑集中管理微服务1微服务2微服务3微服务4微服务1微服务2微服务3微服务4微服务1微服务2微服务3微服务4?联机交易业务需要什么样的分布式数据库联机交易业务需要什么样的分布式数据库ACID的支持事务、一致性等,处理OLTPSQL完整支持MySQL/PostgreSQL语法的完整兼容分布式与扩展性分布式是新一代架构的基础,扩展性能应对变化的数据量Multi-model与多租户multi-model多模数据库引擎,同一引擎处理多种数据应用场景,符合微服务和云数据库的架构理念HTAP混合事务和分析场景,适应更
3、多数据应用需求传统技术兼容性新技术前瞻性分布式交易型数据库技术发展体系Applicationclusterclusterclustercluster核心信贷CRM票据应用垂直分库Applicationclusterclusterclustercluster核心信贷CRM票据核心DB1信贷DB1CRM-DB1核心DB2信贷DB2CRM-DB2核心DB3信贷DB3CRM-DB3核心DBn信贷DBnCRM-DBn票据DB1票据DB2票据DB3票据DBn原生分布式数据库分库分表分布式中间件(路由分发)clustercluster用户组1Application核心信贷CRM票据核心DB1信贷DB1CRM
4、-DB1核心DB2信贷DB2CRM-DB2核心DB3信贷DB3CRM-DB3核心DBn信贷DBnCRM-DBn票据DB1票据DB2票据DB3票据DBn用户组2用户组3用户组4XXXXXXXX Xclustercluster分布式数据库技术发展体系对比垂直分库起点比较早,应用控制能力强,可进行深度定制化对于底层数据库没有任何特殊要求,完全在应用程序内部进行分库分库分表构建中间SQL解析层,尽可能将标准SQL拆分成多个子查询下压到下层数据库,在SQL层进行结果拼装对于底层数据库无特殊要求,在中间件进行SQL切分(支持XA即可)部分兼容传统SQL,应用程序开发难度小于垂直分库原生分布式数据库数据库内
5、部处理分布式事务与数据切分逻辑,对于应用程序完全透明,不需感知底层数据分布数据库内部原生支持分布式事务,性能远远高于分库分表高可用与容灾能力由数据库内核原生支持,不需额外辅助工具应用程序逻辑侵入性极强,应用程序需要进行复杂逻辑才能进行合理数据分布拓扑结构调整或扩容时非常痛苦,几乎不可能完成在线扩容很难支持跨库事务应用程序逻辑侵入性较强,应用程序需感知底层数据分布结构,才能设计出优化后的查询逻辑中间件实现分布式事务,跨库事务使用XA机制,性能大幅度下降作为单点向新型分布式数据库转型的过渡阶段,技术延续性堪忧技术较新,业界成熟案例相对较少辅助工具相对较少,生态环境有待完善优势劣势巨杉分布式数据库“
6、计算存储分离”架构三大核心应用场景交易型业务场景替换 MySQL、PGSQL 等传统关系型数据库数据中台数据服务与高频只读类业务提供比 Hbase 更加友好的开发接口以及更加简便的运维能力音视频、图片、文件等对象存储类业务提供比 Ceph 更优的实时容灾能力以及更加丰富的内容管理特性内容管理联机交易新一代分布式数据库如何适应微服务云化架构需求数据分片能力TargetPartition=DHT(Row-PartitionKey)datagroup1datagroup2datagroup3高可用能力同分区内数据节点之间通过心跳保持连接主节点2轮接收不到超半数节点心跳会自动降备备节点2轮接收不到主节