可插拔架构下的数据增强计算引擎实现

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 可插拔架构下的数据增强计算 引擎实现 张亮 Apache ShardingSphere PMC Chair & SphereEx CEO
2.
3. 个人介绍 • Apache Member,Apache ShardingSphere 项目主席 • SphereEx 创始人兼 CEO • 数据库行业顶级会议 ICDE 论文《Apache ShardingSphere:A Holistic and Pluggable Platform for Data Sharding》作者。 • 《未来架构——从服务化到云原生》、《Apache ShardingSphere 的权威指南》作者
4. • Trends in Databases • What is Database Plus • Overview of Apache ShardingSphere • ShardingSphere & Pluggable
5. 行业现状与趋势 – 数据库碎片化 碎片化趋势突显,传统数据库管理、应用挑战严峻,催生数据库上层生态标准转型 现 状 痛 点 趋 势 业务应用场景多元化 架构选型困难 数据应用场景多元化 数据库高可靠 海量存储计算 异构联邦查询 业务架构从单体式向微服务演进,数据库的访问 量和数据量激增,但数据库架构缺乏银弹级别解 决方案 OLTP、OLAP、HTAP 偏向不同侧重,如性能、可用性、一致性 数据应用方案竖井化 数据安全(加密、审计) 数据访问(多源、异构) 数据管控监控孤岛化 自研细粒度效数据库管控(熔断、流 控、黑白名单等)和监控(调用链、 指标和日志收集)率低、成本高 技术挑战众多 更多类型数据库共存,使研发人员的学习成本不 断增加,需要持续不断的掌握更多的 SQL 方言和 SDK 使用方式 运维复杂度高 数据库架构多元化 商用集中式数据库、开源单机库、国产分布式 数据库并存 数据库协议多样化 MySQL 生态 + Postgres 生态 + 厂商生态并存 掌握各种数据库特征,并结合实际场景制定行之 有效的运维规范,需要大量时间和实践经验的积 累 数据服务平台化 数据库间缺乏协作能力 统一管控平台 增强计算引擎 随着异构数据库的长期共存,数据库上层标准的 缺失,使数据库之间完全没有协作能力
6. 行业现状
7. 行业趋势:数据库平台+碎片化数据库
8. Database Plus 设计哲学 Database Plus: 一种分布式数据库系 统的设计理念。旨在碎片化的异构数据 库上层构建生态,在最大限度的复用数 据库原生存算能力的前提下,进一步提 供面向全局的扩展和叠加计算能力。使 应用和数据库间的交互面向 Database Plus 构建的标准,从而屏蔽数据库碎片 化对上层业务带来的差异化影响。 连接 增强 可插拔 打造数据库 上层标准 数据库计算 增强引擎 构建数据库 功能生态
9. 开源 & Apache 软件基金会 • • 全球最顶级的开源软件基金会 • 管理超过两亿行代码 • 成功孵化 300+ 顶级开源项目 17,000+ Stars 12,000+ Pull Requests 6,000+ Forks 400+ Contributors Projects by Number of Commits, 2021  基金会认可:Apache 软件基金会顶级项目,CNCF 全景项目  社区活跃度:2021 年度 Apache 基金会年度报告代码提交数量位列前十  学术界认可: 数据库顶会 ICDE 2022 发表论文《A Holistic and Pluggable Platform for Data Sharding》  出版《Apache ShardingSphere 的权威指南》,有力阐述了如何在多模型数据库之上 构建开放生态
10. 发展历程 2016 2.0 版本 2018 分布式治理 4.0 版本 成为 Apache 顶级项目 2021 6.0 版本 2025 面向开发者 3,134 Stars 12,964 Stars 简化 SPI 方便开发者参与 15 Contributors 208 Contributors 贡献和使用特性 1.0 版本 3.0 版本 5.0 版本 7.0 版本 数据库增强驱动 数据库代理端 面向可插拔 面向生态 1,455 Stars 进入 Apache 孵化器 Database Plus 理念 提供更多功能和数据库支持 7 Contributors 2017 5,992 Stars 44 Contributors 2020 14,612 Stars 302 Contributors 2023 构建异构数据库上层生态和 标准
11. ShardingSphere 设计实现 Database Plus: 一种分布式数据库系 统的设计理念。旨在碎片化的异构数据 库上层构建生态,在最大限度的复用数 据库原生存算能力的前提下,进一步提 供面向全局的扩展和叠加计算能力。使 应用和数据库间的交互面向 Database Plus 构建的标准,从而屏蔽数据库碎片 化对上层业务带来的差异化影响。 连接 增强 可插拔 打造数据库 上层标准 数据库计算 增强引擎 构建数据库 功能生态
12. 物理部署架构 • 零侵入 & 低耦合 • 使用方式与数据库和原生 SDK 一致,零学习成本, 对遗留系统无侵入;增强功能与业务应用和数据库完 全解耦,防止被数据库和云供应商绑定,对异构数据 库、多云和混合云天然友好。 • 多端访问 & 易运维 • 多类型接入端可同时在线并组成一体化集群,方便监 控和运维。接入端之间可以根据 SQL 规则横向路 由,有效梳理集群流量。 • 高性能 & 单元化 • Java SDK 具备极致高并发能力,与业务应用绑定部 署,更加适合微服务后端的数据单元化架构。
13. 极致性能 ShardingSphere V.S. MySQL,数据处理速度及吞吐量优势突出 ShardingSphere + openGauss 1 配置 7×ShardingSphere- JDBC 8×openGauss CPU 128核 2路鲲鹏920 内存 768GB 系统盘 1TB 数据盘 3×4 TB NVMe SSD 128核 2路鲲鹏920 数据来源:1.TPC-C Top Performance Results 128核 2路鲲鹏920 768GB 768GB 1TB 1TB 无 具备行业 同等规模下 最强性能 备注:MySQL 为单节点,单表存储 4000w 数据。ShardingSphere-JDBC 及 ShardingSphere-Proxy 下面关联 5 个物理库,每库分 10 个表,80w 数据。 1×ShardingSphere- Proxy 无
14. 易用性:DistSQL 1 使用 MySQL Cli 连接 ShardingSphere-Proxy 2 创建并查询分布式数据库,名称为:sharding_db 3 使用新创建的数据库 4 执行 RDL 配置数据源资源 ds_0 和 ds_1 5 执行 RQL 查询新增的数据源资源 6 执行 RDL 为 t_order 表创建分片规则 [1] Build a data sharding service with DistSQL (https://opensource.com/article/21/9/distsql)
15. 可插拔内核架构
16. 计算下推引擎
17. 联邦查询引擎
18. 面向分布式的解决方案 分布式数据库解决方案:为解决原有方案的技术瓶颈,降低更换架构带来的复杂性风险,在不更换原有架构前提下,实现数据库同步,管理多个异构数 据库集群,线性提升数据存储容量及并发吞吐。为用户提供基于数据分片,分布式事务、弹性伸缩的分布式数据库解决方案,兼具单机交易型数据库稳 定性和分布式数据库的扩展能力。 • 功能特性 • 极致性能 & 多接入端 • 多数据库方言 & 访问协议支持 • 水平拆分 / 内置 & 自定义算法 • 垂直拆分 / 联邦查询 • 分布式事务 / 多类型灵活切换 • 弹性伸缩 / 数据迁移 • 读写分离 / 高可用 • 分布式管控 / 监控
19. 面向数据控制的解决方案 数据安全解决方案:为了防止数据泄露,保护数据安全,提供基于产品的数据加密和数据脱敏功能。在不改动原有代码的前提下,为企业提供跨平台、 异构环境的数据安全解决方案。 • 功能特性 • 极致性能 & 多接入端 • 多数据库方言 & 访问协议支持 • 数据加密 / 国密支持 • 密态计算 • 在线加密 / 转加密 • 权限控制 / 对接 LDAP & 第三 方
20. 面向流量控制的解决方案 全链路压测解决方案:基于内核的 SQL 解析能力,以及可插拔平台架构,实现压测数据与生产数据的隔离,帮助应用自动路由,支持全链路压测。帮 助用户实现在生产环境进行压测,所获得较为准确地反应系统真实容量水平和性能的测试结果。 应用服务器 数据库 ShardingSphere 代表压测流量 代表线上正常流量 • 功能特性 • 极致性能 & 多接入端 • 多数据库方言 & 访问协议支持 • 内置 & 自定义影子库算法 • 可观察性 / Metric & Tracing • 金丝雀测试 • 灰度上线
21. SphereEx 企业级应用
22. 商业产品
23. 总结 • 数据库碎片化 • Database Plus:数据库平台 + 多源异构数据库 • 连接 X 增强 X 可插拔 极致性能 + 多端访问 + 避免绑定 + DistSQL •
24. 联系我们 SphereEx Apache ShardingSphere 微信公众号 微信公众号 SphereEx 官网:https://sphere-ex.cn Open SphereEx Community:https://community.sphere-ex.com Apache ShardingSphere Website:https://shardingsphere.apache.org Apache ShardingSphere GitHub: https://github.com/apache/shardingsphere Apache ShardingSphere Slack Channel:https://apacheshardingsphere.slack.com 邮箱:it@sphere-ex.com / biz@sphere-ex.com
25.
26.

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-23 15:40
浙ICP备14020137号-1 $Map of visitor$