分布式数据库系统:原理解析与架构设计 / “计算报国——智能计算系统”系列教材
定价:¥79.00
作者: 刘文洁,李战怀,李宁
出版时间:2026-07-22
出版社:机械工业出版社
- 机械工业出版社
- 9787111798484
- 1-1
- 2026-07-22
- 390
内容简介
本书以国产分布式数据库系统的研发为主线,介绍分布式数据库系统关键技术、典型的分布式数据库系统的设计原理,为解决国家基础软件被“卡脖子”的问题、实现核心技术的自主可控提供技术支撑。全书共分为13章,包括分布式数据库系统概述、分布式数据库系统存储引擎、数据复制和数据分区、分布式数据库系统的查询处理和优化、分布式数据库系统的事务管理和并发控制、高可用性和容错技术、负载均衡和性能优化、分布式数据库系统的安全管理、主流的国产分布式数据库系统案例、面向金融应用的分布式数据库系统CBase、基于新硬件的分布式数据库系统、AI在分布式数据库系统中的应用、分布式数据库系统的未来发展方向。
目录
目录
前言
基础篇
第1章 分布式数据库系统概述
1.1 分布式数据库系统的定义和特点3
1.2 分布式数据库系统的发展历程4
1.3 分布式数据库系统的架构5
1.3.1 共享存储架构5
1.3.2 无共享架构6
1.4 NoSQL与NewSQL系统7
1.4.1 NoSQL系统7
1.4.2 NewSQL系统23
1.5 HTAP数据库系统28
1.6 国产分布式数据库系统发展的重要性30
1.7 小结31
习题32
第2章 分布式数据库系统存储引擎
2.1 哈希存储引擎33
2.1.1 存储格式34
2.1.2 哈希索引35
2.1.3 经典架构35
2.1.4 关键技术37
2.1.5 适用场景38
2.2 B树存储引擎39
2.2.1 数据结构40
2.2.2 经典架构41
2.2.3 关键技术43
2.2.4 适用场景43
2.3 LSM树存储引擎44
2.3.1 存储特点44
2.3.2 经典架构45
2.3.3 关键技术46
2.3.4 应用场景47
2.4 3种存储引擎的对比分析48
2.5 国产数据库的发展史48
2.6 小结50
习题51
第3章 数据复制和数据分区
3.1 数据复制的基本原理和方法53
3.1.1 数据复制的概念53
3.1.2 数据复制协议54
3.2 数据分区的概念56
3.2.1 范围分区58
3.2.2 哈希分区59
3.2.3 数据重分布64
3.2.4 3种复制协议的比较65
3.3 Memcached的数据分区方法65
3.4 高斯数据库的发展历程69
3.5 小结70
习题71
第4章 分布式数据库系统的查询处理和优化
4.1 分布式查询处理的过程74
4.2 分布式查询处理的代价75
4.3 查询优化的意义、目标和方法76
4.3.1 查询优化的意义77
4.3.2 查询优化的目标80
4.3.3 查询优化的方法81
4.4 分布式查询优化算法85
4.4.1 半连接算法86
4.4.2 直接连接算法90
4.5 OceanBase的查询优化算法94
4.5.1 查询优化器框架94
4.5.2 查询改写96
4.5.3 查询优化97
4.5.4 并行执行99
4.6 OceanBase的发展历程100
4.7 小结101
习题102
第5章 分布式数据库系统的事务管理和并发控制
5.1 事务的定义和特性105
5.1.1 事务的定义106
5.1.2 事务的特性106
5.2 分布式事务的实现机制109
5.2.1 分布式事务的定义109
5.2.2 基本理论110
5.2.3 实现方式115
5.3 分布式事务的并发控制和隔离级别127
5.3.1 并发控制的定义127
5.3.2 隔离级别的种类128
5.3.3 基于加锁的并发控制算法129
5.3.4 基于时间戳的并发控制算法135
5.3.5 基于快照隔离的并发控制算法139
5.4 TiDB的分布式事务处理140
5.5 TiDB的发展历程142
5.6 小结143
习题144
第6章 高可用性和容错技术
6.1 高可用性的定义145
6.1.1 可靠性146
6.1.2 可维护性147
6.1.3 可扩展性148
6.2 分布式一致性协议149
6.2.1 Paxos协议149
6.2.2 Raft协议154
6.2.3 ZooKeeper协议160
6.2.4 NWR协议164
6.3 容错技术的原理和方法165
6.3.1 分布式数据库系统的故障类型166
6.3.2 故障检测方法167
6.3.3 故障恢复方法169
6.4 OceanBase的高可用和容错机制170
6.5 GoldenDB的发展历程173
6.6 小结174
习题175
第7章 负载均衡和性能优化
7.1 服务器集群的概念177
7.2 集群的特点和优势179
7.3 负载均衡的定义180
7.4 负载均衡优化策略181
7.4.1 静态负载均衡优化策略181
7.4.2 动态负载均衡优化策略185
7.5 性能优化的定义189
7.6 性能优化方法190
7.6.1 缓存优化190
7.6.2 批量优化191
7.6.3 通信优化192
7.7 TiDB的负载均衡策略192
7.8 TDSQL的研发历程193
7.9 小结194
习题195
第8章 分布式数据库系统的安全管理
8.1 数据库安全的重要性197
8.2 数据库安全管理的发展历史198
8.3 分布式数据库系统的不安全因素200
8.4 分布式数据库系统的安全技术201
8.4.1 身份验证201
8.4.2 数据传输加密202
8.4.3 数据存储加密204
8.4.4 数据备份与恢复205
8.4.5 基于权限的访问控制206
8.4.6 审计追踪和攻击检测207
8.5 国密算法208
8.5.1 SM1算法208
8.5.2 SM2算法209
8.5.3 SM3算法210
8.5.4 SM4算法210
8.5.5 SM7算法211
8.5.6 SM9算法211
8.5.7 祖冲之算法212
8.5.8 国产分布式数据库系统对国密算法的支持213
8.6 数据库安全研究热点214
8.6.1 数据库访问控制214
8.6.2 数据库加密查询215
8.6.3 使用AI为数据库赋能216
8.7 我国数据库安全的发展历程217
8.8 小结218
习题219
进阶篇
第9章 主流的国产分布式数据库系统案例
9.1 OceanBase的架构设计及原理224
9.2 TiDB的架构设计及原理231
9.3 GaussDB的架构设计及原理237
9.4 小结241
习题242
第10章 面向金融应用的分布式数据库系统CBase
10.1 架构设计244
10.2 增量数据分区246
10.3 分布式存储引擎248
10.4 分布式事务管理249
10.5 数据合并机制252
10.6 负载均衡252
10.7 读写流程254
10.8 数据压缩255
10.9 CBase在交通银行的实践256
10.9.1 CBase在历史数据查询系统中的应用256
10.9.2 CBase在贷记卡授权系统中的应用257
10.10 CBase的全面国产化历程257
10.10.1 国产化软硬件环境分析258
10.10.2 国产化实践259
10.11 小结260
习题260
第11章 基于新硬件的分布式数据库系统
11.1 新硬件对分布式数据库系统的影响261
11.2 基于新硬件的分布式数据库系统设计262
11.2.1 计算层面的新硬件264
11.2.2 存储层面的新硬件266
11.2.3 传输层面的新硬件269
11.3 应用新硬件的分布式数据库系统案例270
11.4 小结272
习题273
第12章 AI在分布式数据库系统中的应用
12.1 基于AI的数据库配置275
12.1.1 旋钮调优276
12.1.2 索引推荐278
12.1.3 SQL重写279
12.2 基于AI的数据库性能优化280
12.2.1 基数/代价估计280
12.2.2 连接顺序选择283
12.3 基于AI的数据库设计284
12.3.1 基于AI的数据结构设计284
12.3.2 基于AI的事务管理285
12.4 基于AI的数据库监测285
12.5 基于AI的数据库安全288
12.6 小结289
习题289
第13章 分布式数据库系统的未来发展方向
13.1 自治数据库292
13.2 云数据库296
13.3 向量数据库299
13.4 多模数据库304
13.5 小结310
习题310
参考文献
前言
基础篇
第1章 分布式数据库系统概述
1.1 分布式数据库系统的定义和特点3
1.2 分布式数据库系统的发展历程4
1.3 分布式数据库系统的架构5
1.3.1 共享存储架构5
1.3.2 无共享架构6
1.4 NoSQL与NewSQL系统7
1.4.1 NoSQL系统7
1.4.2 NewSQL系统23
1.5 HTAP数据库系统28
1.6 国产分布式数据库系统发展的重要性30
1.7 小结31
习题32
第2章 分布式数据库系统存储引擎
2.1 哈希存储引擎33
2.1.1 存储格式34
2.1.2 哈希索引35
2.1.3 经典架构35
2.1.4 关键技术37
2.1.5 适用场景38
2.2 B树存储引擎39
2.2.1 数据结构40
2.2.2 经典架构41
2.2.3 关键技术43
2.2.4 适用场景43
2.3 LSM树存储引擎44
2.3.1 存储特点44
2.3.2 经典架构45
2.3.3 关键技术46
2.3.4 应用场景47
2.4 3种存储引擎的对比分析48
2.5 国产数据库的发展史48
2.6 小结50
习题51
第3章 数据复制和数据分区
3.1 数据复制的基本原理和方法53
3.1.1 数据复制的概念53
3.1.2 数据复制协议54
3.2 数据分区的概念56
3.2.1 范围分区58
3.2.2 哈希分区59
3.2.3 数据重分布64
3.2.4 3种复制协议的比较65
3.3 Memcached的数据分区方法65
3.4 高斯数据库的发展历程69
3.5 小结70
习题71
第4章 分布式数据库系统的查询处理和优化
4.1 分布式查询处理的过程74
4.2 分布式查询处理的代价75
4.3 查询优化的意义、目标和方法76
4.3.1 查询优化的意义77
4.3.2 查询优化的目标80
4.3.3 查询优化的方法81
4.4 分布式查询优化算法85
4.4.1 半连接算法86
4.4.2 直接连接算法90
4.5 OceanBase的查询优化算法94
4.5.1 查询优化器框架94
4.5.2 查询改写96
4.5.3 查询优化97
4.5.4 并行执行99
4.6 OceanBase的发展历程100
4.7 小结101
习题102
第5章 分布式数据库系统的事务管理和并发控制
5.1 事务的定义和特性105
5.1.1 事务的定义106
5.1.2 事务的特性106
5.2 分布式事务的实现机制109
5.2.1 分布式事务的定义109
5.2.2 基本理论110
5.2.3 实现方式115
5.3 分布式事务的并发控制和隔离级别127
5.3.1 并发控制的定义127
5.3.2 隔离级别的种类128
5.3.3 基于加锁的并发控制算法129
5.3.4 基于时间戳的并发控制算法135
5.3.5 基于快照隔离的并发控制算法139
5.4 TiDB的分布式事务处理140
5.5 TiDB的发展历程142
5.6 小结143
习题144
第6章 高可用性和容错技术
6.1 高可用性的定义145
6.1.1 可靠性146
6.1.2 可维护性147
6.1.3 可扩展性148
6.2 分布式一致性协议149
6.2.1 Paxos协议149
6.2.2 Raft协议154
6.2.3 ZooKeeper协议160
6.2.4 NWR协议164
6.3 容错技术的原理和方法165
6.3.1 分布式数据库系统的故障类型166
6.3.2 故障检测方法167
6.3.3 故障恢复方法169
6.4 OceanBase的高可用和容错机制170
6.5 GoldenDB的发展历程173
6.6 小结174
习题175
第7章 负载均衡和性能优化
7.1 服务器集群的概念177
7.2 集群的特点和优势179
7.3 负载均衡的定义180
7.4 负载均衡优化策略181
7.4.1 静态负载均衡优化策略181
7.4.2 动态负载均衡优化策略185
7.5 性能优化的定义189
7.6 性能优化方法190
7.6.1 缓存优化190
7.6.2 批量优化191
7.6.3 通信优化192
7.7 TiDB的负载均衡策略192
7.8 TDSQL的研发历程193
7.9 小结194
习题195
第8章 分布式数据库系统的安全管理
8.1 数据库安全的重要性197
8.2 数据库安全管理的发展历史198
8.3 分布式数据库系统的不安全因素200
8.4 分布式数据库系统的安全技术201
8.4.1 身份验证201
8.4.2 数据传输加密202
8.4.3 数据存储加密204
8.4.4 数据备份与恢复205
8.4.5 基于权限的访问控制206
8.4.6 审计追踪和攻击检测207
8.5 国密算法208
8.5.1 SM1算法208
8.5.2 SM2算法209
8.5.3 SM3算法210
8.5.4 SM4算法210
8.5.5 SM7算法211
8.5.6 SM9算法211
8.5.7 祖冲之算法212
8.5.8 国产分布式数据库系统对国密算法的支持213
8.6 数据库安全研究热点214
8.6.1 数据库访问控制214
8.6.2 数据库加密查询215
8.6.3 使用AI为数据库赋能216
8.7 我国数据库安全的发展历程217
8.8 小结218
习题219
进阶篇
第9章 主流的国产分布式数据库系统案例
9.1 OceanBase的架构设计及原理224
9.2 TiDB的架构设计及原理231
9.3 GaussDB的架构设计及原理237
9.4 小结241
习题242
第10章 面向金融应用的分布式数据库系统CBase
10.1 架构设计244
10.2 增量数据分区246
10.3 分布式存储引擎248
10.4 分布式事务管理249
10.5 数据合并机制252
10.6 负载均衡252
10.7 读写流程254
10.8 数据压缩255
10.9 CBase在交通银行的实践256
10.9.1 CBase在历史数据查询系统中的应用256
10.9.2 CBase在贷记卡授权系统中的应用257
10.10 CBase的全面国产化历程257
10.10.1 国产化软硬件环境分析258
10.10.2 国产化实践259
10.11 小结260
习题260
第11章 基于新硬件的分布式数据库系统
11.1 新硬件对分布式数据库系统的影响261
11.2 基于新硬件的分布式数据库系统设计262
11.2.1 计算层面的新硬件264
11.2.2 存储层面的新硬件266
11.2.3 传输层面的新硬件269
11.3 应用新硬件的分布式数据库系统案例270
11.4 小结272
习题273
第12章 AI在分布式数据库系统中的应用
12.1 基于AI的数据库配置275
12.1.1 旋钮调优276
12.1.2 索引推荐278
12.1.3 SQL重写279
12.2 基于AI的数据库性能优化280
12.2.1 基数/代价估计280
12.2.2 连接顺序选择283
12.3 基于AI的数据库设计284
12.3.1 基于AI的数据结构设计284
12.3.2 基于AI的事务管理285
12.4 基于AI的数据库监测285
12.5 基于AI的数据库安全288
12.6 小结289
习题289
第13章 分布式数据库系统的未来发展方向
13.1 自治数据库292
13.2 云数据库296
13.3 向量数据库299
13.4 多模数据库304
13.5 小结310
习题310
参考文献














