《2019年分布式数据库及数据中间件能力验证与实践.pdf》由会员分享,可在线阅读,更多相关《2019年分布式数据库及数据中间件能力验证与实践.pdf(20页珍藏版)》请在三个皮匠报告上搜索。
1、全球敏捷运维峰会广州站分布式数据库及数据中间件能力验证与实践全球敏捷运维峰会广州站NewSQL分布式数据库实现方案New Architecture TiDB CockroachDBTransparent Sharding Middleware Apache ShardingSphere MyCatDatabase-as-a-Service Amazon Aurora PolarDB全球敏捷运维峰会广州站基于开源分布式数据库架构选型思考通过积累最佳实践方法和经验,设计出符合业务需求和管理需求的开源架构,以满足创新业务的运行支撑要求。2.使用开源架构来支撑创新业务建立开发和运维部门中的核心开源技术
2、团队,实现开源技术领域的可持续性的发展。充分利用自身条件,与外部开源社区建立良好沟通和互动渠道:”请进来”或”走出去”。4.锻炼具备相关技术的团队建立部署管理,配置管理,日志管理和监控告警管理等多种手段,实现对开源软件和开源架构的安全可控。3.建立完善的保障制度建立正确的开源软件选型标准。社区成熟度、软件成熟度1.选择适合的开源技术全球敏捷运维峰会广州站甜橙金融深度参与开源分布式数据技术分布式数据中间件开源项目Apache 孵化器项目(2018/11/10)9200+Star京东数科项目发起及维护甜橙金融深度参与及贡献ShardingSphere PMC 成员NewSQL 分布式数据库开源项目
3、CNCF 孵化器项目(2019/5/21)21000+StarPingCAP 项目发起及维护甜橙金融深度参与和投产实践聚焦多中心多活及云原生领域能力积极参与国内数据库及开源社区智能运维,云数据库管理,数据分布式传输等领域长期研究人工智能,区块链,安全,大数据领域积极实践全球敏捷运维峰会广州站ShardingSphere 功能架构核心功能数据分片分布式事务数据库治理弹性伸缩管控界面实现方案Sharding-JDBCSharding-ProxySharding-Sidecar云原生无中心零侵入Apache ShardingSphere全球敏捷运维峰会广州站ShardingSphere 的技术优势与
4、特点数据分片为核心的多种解决方案多种形式接入数据编排与治理微内核&开放生态全球敏捷运维峰会广州站甜橙金融 ShardingSphere应用架构 Java应用通过Sharding-JDBC接入 通过DTS将MySQL数据同步到ES&HBASE中,满足OLAP场景。MOZIS运维平台通过Sharding-Proxy接入,提供日常运维支持 利用配置中心对相关配置信息进行统一管理全球敏捷运维峰会广州站甜橙金融 ShardingSphere应用实践 应用性能监控 基于pinpoint进行的二次开发。采用字节码增强技术 编写plugin完成ShardingSphere核心链路方法的监控平台架构全球敏捷运维
5、峰会广州站甜橙金融 ShardingSphere应用实践 应用性能监控全球敏捷运维峰会广州站甜橙金融 ShardingSphere应用实践 Proxy优化Sharding-Proxy多逻辑数据源支持Sharding-Proxy Backend NIO 优化全球敏捷运维峰会广州站甜橙金融 ShardingSphere应用实践 可视化管控 数据分片配置管理 运行实例编排管理 自动弹性扩缩全球敏捷运维峰会广州站大并发强一致分布式数据处理场景的思考业务场景需求分库分表模式NewSQL 模式业务维度的选择和切分适合业务中数据模型容易按照单一维度切分和查询的场景。(比如时间+Hash)不限维度的自由查询和
6、数据建模(与单机数据库相同)跨库跨节点复杂计算数据 切分后无跨节点跨库聚合及复杂关联查询的业务很友好和便利不限维度的进行跨节点跨库 的 JOIN 关联及聚合计算。(包含计算下推能力)分布式强一致事务数据 切分后无跨节点跨库聚合及复杂关联查询的业务很友好和便利适合联机交易业务有强一致分布式事务刚需的场景大表占比数据库内大表(千万到亿以上行记录规模)数量占比较小的业务场景比较便捷数据库内大表行记录规模和数据规模没有什么限制,适合数据快速增长的业务混合负载(HTAP)适合业务单一负载,尤其是计算复杂度低的大并发联机交易适合同时存在有 OLTP 联机交易和 在线实时分析的业务场景弹性在线热扩容对于业务
7、中有足够变更窗口,不需要在线弹性热扩容的场景比较轻量便利。适合需要弹性在线热扩容,提高计算吞吐和存储容量的场景。计算和存储自动平衡对于扩容后对数据没有计算重平衡及存储重平衡要求的业务比较方便。适合业务在扩容后 需要做自动的计算重平衡和存储重平衡的场景全球敏捷运维峰会广州站甜橙金融 数据处理技术方案选择思考技术方向/评估维度容量阈性能阈大表数量分片规则增长趋势HTAP拓扑标准RDS 方案(单实例)3T3T&20000 QPS3T20000 QPS=3N/A动态扩容支持动态扩展调整注:以上为 甜橙金融 根据自身业务特点,以及对分布式数据处理技术的实践总结的选择路径,并在未来随着技术的进行灵活调整。
8、其他用户也需要通过自己的业务特点来有针对性的设计对应的方案路径。全球敏捷运维峰会广州站典型 TiDB 应用架构基于 2013 年 Google Spanner/F1 论文基于 2014 年 Stanford 工业级分布式一致性协议实现 Raft 博士论文水平线性扩展、强一致分布式事务、故障自恢复的高可用(非主从)、跨数据中心多活全球敏捷运维峰会广州站甜橙金融 TiDB 研究与实践 联机交易负载场景财务稽核,对账,反洗钱,账单,营销等重要业务Multi Raft 协议 保证节点间副本多数派强一致数据透明打散,库内业务大表不用人工切分,表记录到 亿/十亿及以上规模上性能无影响去中心化的 2PC(两
9、阶段递交)确保跨 Region 事务的强一致,达到 ACID 标准业务不需要做分库分表改造,CRUD 行为与单机保持一致表上任意列上都可以做分布式查询计算与更新操作计算支持过滤,聚合等下推到 数据节点分布式计算MySQL JDBC 和 Mybatis ORM 直接使用直接在线扩缩容,业务代码和数据模型不需要做调整计算层和存储层均可通过节点增加线性扩展数据库的计算吞吐和容量集群角色配置物理节点并行实例数量部署拓扑计算节点32 Core,256GB Mem33每台启动 1个 TiDB 进程,可在线 增加存储节点48 Core,256GB Mem,3TB SSD*3412每台启动 3 个 TiKV
10、进程,可在线增加投产 OLTP 交易集群典型配置:全球敏捷运维峰会广州站甜橙金融 TiDB 研究与实践 跨中心多中心多活容灾场景全球敏捷运维峰会广州站甜橙金融 TiDB 研究与实践 跨中心多中心多活容灾场景根据:Site(dc=)映射物理中心Zone(zone=)映射逻辑区Rack(rack=)映射物理机架Host(host=)映射物理主机全球敏捷运维峰会广州站甜橙金融 TiDB 研究与实践 云原生分布式数据库场景服务器节点(Node A.Node N)数据库组件实例调度在不同硬件节点 根据负载和调度策略动态分布 可定制调度策略,改变默认的行为 集群实例交错在不同硬件节点 容器集群扩缩配合 TiDB 集群扩缩 API 封装集成到上游统一运维管理平台 监控告警上报汇聚到统一监控/告警平台 高可用管理和自动 Failover 通过AZ(可用区)分布到多个可用区域甜橙金融 云服务平台High Level Management API 全球敏捷运维峰会广州站甜橙金融 TiDB 研究与实践 HTAP 混合负载场景通过 Raft Learner 独立同步一套列存Raft Learner 提供极低消耗的副本同步Raft Learner 读取协议配合 MVCC 提供强一致的读取通过 Label 进行物理隔离,AP/TP 作业互相无影响列存列存全球敏捷运维峰会广州站THANK YOU!