- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
ShardingSphere的架构及未来规划
The Architecture of ShardingSphere and Roadmap 《ShardingSphere的架构及未来规划》
展开查看详情
1 .Apache ShardingSphere 架构及规划 京东数科-潘娟 PANJUAN@APACHE.ORG
2 . 潘娟 京东数科高级DBA&Apache ShardingSphere PPMC 主要负责京东数科数据库中间件开发、数据库运维自动化平台开发、生产数据库运维工作。多次参 与京东6.18、11.11等大促活动的护航工作。曾负责京东数科数据库自动化平台设计与开发项目, 现专注于Apache ShardingSphere分布式数据库中间件开发和发展。乐于在数据库、分布式、中 间件、开源社区等相关领域进行学习和探索。多次受邀参加数据库&架构领域的相关会议并进行分 享交流。也多次进行在线技术和经验交流分享、公众号文章分享。
3 .目录 1 架构变迁 2 社区与开源 CONTENTS 3 架构与实现
4 .NewSQL的分类 New Architecture Database-as-a-Service Transparent Sharding Middleware 《What‘s Really New with NewSQL?》 https://db.cs.cmu.edu/papers/2016/pavlo-newsql-sigmodrec2016.pdf
5 .架构变迁 接入端 数据分片 分布式治理 分布式事务 核心功能 数据库集群
6 .架构变迁 接入端 数据分片 分布式治理 分布式事务 弹性扩展 核心功能 数据库集群
7 .部署生态 宿主机B 宿主机A 生态功能 业务代码 业务代码 可观察性管理 Sharding- JDBC Sharding-JDBC Sharding- 核心功能 OpenTracing 分布式事务 UI展示 数据库集群 数据分片 Sharding- 配置中心管理 Scaling Sharding- Orchestration 自动化弹性伸缩 Sharding- UI控制台 Proxy MySQL/PostgreSQL Client/管理工具
8 .架构变迁 计算存储分离 分布式事务 计算节点无状态,可通过水平扩展增加算 力;存储节点可以和计算节点分层优化 02 高性能、完全支持ACID原义的分布式事 务引擎 01 03 分布式存储 弹性伸缩 数据存储不受单机磁盘容量限制,可通 可在不重启系统的情况下动态的扩容和 过增加数据服务器的数量提升存储能力 缩容当前数据节点 06 04 HTAP 多数据副本 混合处理OLTP的事务型操作和OLAP的 分析型操作 05 自动将数据以强一致、高性能的方式复 制至跨机房多副本
9 .目录 1 架构变迁 2 社区与开源 CONTENTS 3 架构与实现
10 .社区 接入端 Sharding- Sharding-Proxy JDBC 功能特性 数据分片 分布式事务 分布式治理 弹性扩展 数据库集群 MySQL PostgreSQL 技术Apache Oracle SQL Server ShardingSphere (开源分布式数据库中间件平台) 活跃社区
11 .贡献 g T h in e ny s it A e b ig n W es D Document w er Translate A n s ti o n s Que Co 技术ding re Sh a In I s s ti g ve su a e te
12 .https://shardingsphere.apache.org/community/en/poweredby/
13 .目录 1 架构变迁 2 社区与开源 CONTENTS 3 架构与实现
14 . 数据库 • 计算 架构层级 • 存储 ShardingSphere • SQL解析&改写& 路由 • 分布式事务 拓展 • 高可用 • 数据脱敏 • 可观察性 • 弹性伸缩 • ……
15 .内核能力 SQL解析 1.Antlr语法解析+数据库SQL方言的理解 SQL路由 结果归并 2.理解由用户规则 + SQL语法决定的SQL路由 3.JDBC Interface的兼容与实现 SQL改写 4.各种SQL的逻辑处理 SQL执行
16 .分布式事务 01 Saga 源于论文: XA https://www.cs.cornell.edu/andru/cs711/200 两阶段提交事务的标准 外柔内刚 2fa/reading/sagas.pdf 02
17 .分布式事务 两阶段事务 柔性事务 JDTX 原子性 支持 服务保证 支持 (回滚) 一致性 强一致 最终一致 强一致 隔离性 支持 服务保证 电商 支持 金融 持久性 支持 支持 支持 性能 严重衰退 略微衰退 略微衰退 技术 业务改造 无 一般需要 无 协议限制 有 无 无
18 .分布式事务 Sharding-Transaction Sharding Sharding Transaction SQL Data Source Manager Revert 本地事务API Sharding XA Sharding BASE Sharding JDTX Transaction Transaction Transaction Manager Manager Manager Atomikos Servicecomb XA Manager JDTX Manager Pack Manager Narayana JDTX Transaction SPI Seata XA Manager Manager Bitronix XA Manager BASE Transaction SPI XA Transaction SPI
19 .分布式事务 1.JTA的解读 2.分布式事务原理 3.相关数据数据库事务实现方案
20 .分布式治理 服务治理 • 配置动态化 • 跨机房高可用 01 • 熔断、禁用、失效转移 数据治理 可观察性 • 权限 02 03 • APM • 数据脱敏 • 调用链 • 全链路数据压测 • 应用拓扑图 • SQL审核 • 监控报警 • SQL防火墙
21 .弹性迁移 New DB_0 Origin DB_0 增量数据 New DB_1 Origin DB_1 New DB_2 存量数据 New DB_3
22 .Welcome on board https://shardingsphere.apache.org/ https://github.com/apache/incubator-shardingsphere mailto:dev-subscribe@shardingsphere.apache.org