没有合适的资源?快使用搜索试试~ 我知道了~
首页ShardingSphere分库分表中文使用手册
ShardingSphere分库分表中文使用手册
5星 · 超过95%的资源 需积分: 36 37 下载量 92 浏览量
更新于2023-03-03
评论 2
收藏 6.15MB PDF 举报
Apache ShardingSphere 是一套开源的分布式数据库中间件解决方案组成的生态圈,它由 JDBC、Proxy 和 Sidecar(规划中)这 3 款相互独立,却又能够混合部署配合使用的产品组成。 它们均提供标准化的数据分片、分布式事务和数据库治理功能,可适用于如 Java 同构、异构语言、云原生等各种多样化的应用场景。
资源详情
资源评论
资源推荐
Apache ShardingSphere ElasticJob
document
Apache ShardingSphere
2020 年 11 ⽉ 25 ⽇
Contents
1 简介 2
1.1 ShardingSphere-JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 ShardingSphere-Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 ShardingSphere-Sidecar(TODO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 混合架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 功能列表 6
2.1 数据分⽚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 分布式事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3 数据库治理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3 快速⼊⻔ 7
3.1 ShardingSphere-JDBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1.1 1. 引⼊ maven 依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1.2 2. 规则配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.1.3 3. 创建数据源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 ShardingSphere-Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.1 1. 规则配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.2 2. 引⼊依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.3 3. 启动服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.2.4 4. 使⽤ ShardingSphere-Proxy . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3 ShardingSphere-Scaling(Alpha) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.1 1. 规则配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.2 2. 引⼊依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.3 3. 启动服务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.4 4. 任务管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 概念 & 功能 10
4.1 数据分⽚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.1.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
垂直分⽚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
⽔平分⽚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
i
4.1.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.1.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1.4 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
分⽚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
⾏表达式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
分布式主键 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
强制分⽚路由 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.1.5 内核剖析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
SQL 解析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
执⾏器优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
SQL 路由 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
SQL 改写 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
SQL 执⾏ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
结果归并 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
解析引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
路由引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
改写引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
执⾏引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
归并引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.1.6 使⽤规范 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
分⻚ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
解析器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
RDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.2 分布式事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.2.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
本地事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
两阶段提交 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
柔性事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.2.4 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
XA 两阶段事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Seata 柔性事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.2.5 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
XA 两阶段事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Seata 柔性事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.2.6 使⽤规范 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
ii
本地事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
XA 两阶段事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Seata 柔性事务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.3 读写分离 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.3.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.3.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.3.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.3.4 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
主库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
从库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
主从同步 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
负载均衡策略 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.3.5 使⽤规范 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
不⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
4.4 分布式治理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.4.4 治理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
配置中⼼ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
注册中⼼ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
第三⽅组件依赖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.4.5 可观察性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
导览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
应⽤性能监控集成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.5 弹性伸缩 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.5.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.5.2 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.5.3 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.5.4 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.5.5 状态 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.5.6 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
弹性伸缩作业 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
数据节点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
存量数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
增量数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.5.7 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
原理说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
执⾏阶段说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.5.8 使⽤规范 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
不⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.6 数据加密 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
iii
4.6.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.6.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.6.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.6.4 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.6.5 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
处理流程详解 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
解决⽅案详解 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
中间件加密服务优势 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
加密算法解析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.6.6 使⽤规范 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
不⽀持项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.7 影⼦库压测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.7.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.7.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.7.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.7.4 核⼼概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
影⼦字段 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
⽣产数据库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
影⼦数据库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.7.5 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
整体架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
影⼦规则 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
处理过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.8 可插拔架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.8.1 背景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.8.2 挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.8.3 ⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.9 测试引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
4.9.1 SQL 测试⽤例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.9.2 整合测试引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
流程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
注意事项 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.9.3 SQL 解析测试引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
数据准备 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.9.4 SQL 改写测试引擎 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.9.5 性能测试 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
⽬标 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
测试场景 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
测试环境搭建 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
测试结果验证 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
5 ⽤⼾⼿册 115
iv
剩余214页未读,继续阅读
keep-go-on
- 粉丝: 5139
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5