 孟浩然-Apache ShardingSphere 架构解析&应用实践Apache ShardingSphere 架构解析与应用实践 孟浩然 2021/12/11 01 孟浩然 SphereEx 高级研发工程师 Apache ShardingSphere PMC 曾就职京东科技,负责数据库产品研发,热爱开源,关注数据库生态,目前就职 SphereEx , 专 注于 Apache ShardingSphere 分布式数据库中间件研发以及开源社区建设 1 1. Apache ShardingSphere 5.0.0 架构解析 2. 5.0.0 应用实践 3. Database Plus 解决方案 目录 产 品 定 位 l 构建异构数据库的上层标准和生态 l 提供精准化和差异化的能力 产 品 定 位 4.X 5.X 定位 分 库 分 表 中 间 件 分 布 式 数 据 库 生 态 系 统 功能 提 供 基 础 功 能 提 供 基 础 品 架 构 部 署 架 构 l ShardingSphere-JDBC 采用无中心化架 构,与应用程序共享资源,适用于 Java 开发的高性能的轻量级 OLTP 应用; l ShardingSphere-Proxy 提供静态入口 以及异构语言的支持,独立于应用程序 部署,适用于 OLAP 应用以及对分片数 据库进行管理和运维的场景。 整 体 架 构 l L1 内核层:面向数据库内核, 包括数据库事务引擎,查询优0 码力 | 31 页 | 2.36 MB | 1 年前3 孟浩然-Apache ShardingSphere 架构解析&应用实践Apache ShardingSphere 架构解析与应用实践 孟浩然 2021/12/11 01 孟浩然 SphereEx 高级研发工程师 Apache ShardingSphere PMC 曾就职京东科技,负责数据库产品研发,热爱开源,关注数据库生态,目前就职 SphereEx , 专 注于 Apache ShardingSphere 分布式数据库中间件研发以及开源社区建设 1 1. Apache ShardingSphere 5.0.0 架构解析 2. 5.0.0 应用实践 3. Database Plus 解决方案 目录 产 品 定 位 l 构建异构数据库的上层标准和生态 l 提供精准化和差异化的能力 产 品 定 位 4.X 5.X 定位 分 库 分 表 中 间 件 分 布 式 数 据 库 生 态 系 统 功能 提 供 基 础 功 能 提 供 基 础 品 架 构 部 署 架 构 l ShardingSphere-JDBC 采用无中心化架 构,与应用程序共享资源,适用于 Java 开发的高性能的轻量级 OLTP 应用; l ShardingSphere-Proxy 提供静态入口 以及异构语言的支持,独立于应用程序 部署,适用于 OLAP 应用以及对分片数 据库进行管理和运维的场景。 整 体 架 构 l L1 内核层:面向数据库内核, 包括数据库事务引擎,查询优0 码力 | 31 页 | 2.36 MB | 1 年前3
 Apache ShardingSphere Shadow DB 及在 CyborgFlow 中的应用 - 侯阳com/apache/shardingsphere OpenSEC: https://community.sphere-ex.com 文字 Apache ShardingSphere Overview Shadow DB 应用场景 Shadow DB 架构设计 全链路压测:流量规划,比如双 11,618 等 灰度发布:指定测试用户的体验版本发布 服务预热:预热数据隔离 对比测试:基于版本的对比测试 Shadow database-shadow 数据路由 cyborg-database-shadow sw8-correlation: cyborg-flow=true CyborgFlow POC1 文字 直接调用服务应用模拟生产环境调用 调用 cyborg-flow-gateway 网关模拟压测环境调用 CyborgFlow POC2 文字 真实流量的调用链路 压测流量的调用链路 CyborgFlow POC30 码力 | 22 页 | 3.83 MB | 1 年前3 Apache ShardingSphere Shadow DB 及在 CyborgFlow 中的应用 - 侯阳com/apache/shardingsphere OpenSEC: https://community.sphere-ex.com 文字 Apache ShardingSphere Overview Shadow DB 应用场景 Shadow DB 架构设计 全链路压测:流量规划,比如双 11,618 等 灰度发布:指定测试用户的体验版本发布 服务预热:预热数据隔离 对比测试:基于版本的对比测试 Shadow database-shadow 数据路由 cyborg-database-shadow sw8-correlation: cyborg-flow=true CyborgFlow POC1 文字 直接调用服务应用模拟生产环境调用 调用 cyborg-flow-gateway 网关模拟压测环境调用 CyborgFlow POC2 文字 真实流量的调用链路 压测流量的调用链路 CyborgFlow POC30 码力 | 22 页 | 3.83 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.2.0ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.2 使用限制 . . ShardingSphere‐Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.2 使用限制 . . 1.3 目标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.4 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 海量数据高并发的 OLTP 场景0 码力 | 449 页 | 5.85 MB | 1 年前3 Apache ShardingSphere 中文文档 5.2.0ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.1.2 使用限制 . . ShardingSphere‐Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.2.2 使用限制 . . 1.3 目标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.4 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 海量数据高并发的 OLTP 场景0 码力 | 449 页 | 5.85 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.0.0-alpha. . 69 导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 应用性能监控集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Agent 集成 . . . . . . . 261 结束 ShardingSphere‐Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 应用配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 4.4.3 使用手册 . . Sidecar (规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成。它们均提供标准化的数据水平 扩展、分布式事务和分布式治理等功能,可适用于如 Java 同构、异构语言、云原生等各种多样化的应用 场景。 Apache ShardingSphere 旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并 非实现一个全新的关系型数据库。关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未0 码力 | 301 页 | 3.44 MB | 1 年前3 Apache ShardingSphere 中文文档 5.0.0-alpha. . 69 导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 应用性能监控集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Agent 集成 . . . . . . . 261 结束 ShardingSphere‐Scaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 应用配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262 4.4.3 使用手册 . . Sidecar (规划中)这 3 款既能够独立部署,又支持混合部署配合使用的产品组成。它们均提供标准化的数据水平 扩展、分布式事务和分布式治理等功能,可适用于如 Java 同构、异构语言、云原生等各种多样化的应用 场景。 Apache ShardingSphere 旨在充分合理地在分布式的场景下利用关系型数据库的计算和存储能力,而并 非实现一个全新的关系型数据库。关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未0 码力 | 301 页 | 3.44 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.0.0. . 51 导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 应用性能监控集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Agent 集成 . . . . . . 204 结束 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 应用配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 v 5.4.3 使用手册 ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核0 码力 | 385 页 | 4.26 MB | 1 年前3 Apache ShardingSphere 中文文档 5.0.0. . 51 导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 应用性能监控集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Agent 集成 . . . . . . 204 结束 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 应用配置项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 v 5.4.3 使用手册 ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核0 码力 | 385 页 | 4.26 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.1.1ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端。 1.1. 简介 2 Apache ShardingSphere0 码力 | 409 页 | 4.47 MB | 1 年前3 Apache ShardingSphere 中文文档 5.1.1ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端。 1.1. 简介 2 Apache ShardingSphere0 码力 | 409 页 | 4.47 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.1.0ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端。 1.1. 简介 2 Apache ShardingSphere0 码力 | 406 页 | 4.40 MB | 1 年前3 Apache ShardingSphere 中文文档 5.1.0ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document MySQL/PostgreSQL 协议的访问客户端(如:MySQL Command Client, MySQL Workbench, Navicat 等)操作数据,对 DBA 更加友好。 • 向应用程序完全透明,可直接当做 MySQL/PostgreSQL 使用; • 适用于任何兼容 MySQL/PostgreSQL 协议的的客户端。 1.1. 简介 2 Apache ShardingSphere0 码力 | 406 页 | 4.40 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.1.2ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.2 使用限制 . . ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document0 码力 | 446 页 | 4.67 MB | 1 年前3 Apache ShardingSphere 中文文档 5.1.2ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.1.2 使用限制 . . ShardingSphere 的核心概念。 • 连接:通过对数据库协议、SQL 方言以及数据库存储的灵活适配,快速的连接应用与多模式的异构 数据库; • 增量:获取数据库的访问流量,并提供流量重定向(数据分片、读写分离、影子库)、流量变形(数 据加密、数据脱敏)、流量鉴权(安全、审计、权限)、流量治理(熔断、限流)以及流量分析(服 务质量分析、可观察性)等透明化增量功能; • 可插拔:项目采用微内核 Sidecar(规划中)这 3 款既能够独立部署,又支持混合部署 配合使用的产品组成。它们均提供标准化的基于数据库作为存储节点的增量功能,可适用于如 Java 同构、 异构语言、云原生等各种多样化的应用场景。 关系型数据库当今依然占有巨大市场份额,是企业核心系统的基石,未来也难于撼动,我们更加注重在 原有基础上提供增量,而非颠覆。 1 Apache ShardingSphere document0 码力 | 446 页 | 4.67 MB | 1 年前3
 Mybatis 3.3.0 中文用户指南ctId> Mybatis 3.3.0 中文用户指南ctId>- x.x.x 从 从 XML 中构建 中构建 SqlSessionFactory 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的。SqlSessionFactory 的实例可以通过 SqlSessionFactoryBuilder 获得。而 SqlSessionFactoryBuilder 诚然这种方式能够正常工作,并且对于使用旧版本 MyBatis 的用户来说也比较熟悉,不过现在有了一种更直白的方式。使用对于给定 语句能够合理描述参数和返回值的接口(比如说BlogMapper.class),你现在不但可以执行更清晰和类型安全的代码,而且还不用担 心易错的字符串字面值以及强制类型转换。 例如: SqlSession session = sqlSessionFactory.openSession(); try { session.getMapper(BlogMapper.class); Blog blog = mapper.selectBlog(101); 第二种方法有很多优势,首先它不是基于字符串常量的,就会更安全;其次,如果你的 IDE 有代码补全功能,那么你可以在有了已映射 SQL 语句的基础之上利用这个功能。 PDFmyURL - the best online web to pdf conversion0 码力 | 98 页 | 2.03 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.4.1ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.1.2 使用限制 . . ShardingSphere‐Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.2.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.2.2 使用限制 . . 1.3 目标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.1.4 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 海量数据高并发的 OLTP 场景0 码力 | 530 页 | 4.49 MB | 1 年前3 Apache ShardingSphere 中文文档 5.4.1ShardingSphere‐JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.1.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.1.2 使用限制 . . ShardingSphere‐Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.2.1 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.2.2 使用限制 . . 1.3 目标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 8.1.4 应用场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 海量数据高并发的 OLTP 场景0 码力 | 530 页 | 4.49 MB | 1 年前3
共 19 条
- 1
- 2













