CONTENTS

目录

第1章数据库发展史00

1.1网状数据库和层次数据库00

1.2关系数据库00

1.3分布式数据库00

1.4云数据库00

1.5NoSQL数据库00

1.6NewSQL数据库0

1.7多模数据库0

1.8AI原生数据库0

1.9其他类型数据库0

1.10小结0

习题0

第2章结构化查询语言0

2.1SQL语法0

2.1.1数据类型0

2.1.2表模式定义0

2.1.3数据完整性检查0

2.1.4插入、删除、更新数据0

2.1.5简单查询0

2.1.6连接操作0

2.1.7集合操作0

2.1.8聚集与分组操作0

2.1.9创建索引0

2.1.10视图与物化视图0

2.1.11访问控制0

2.1.12事务处理语句0

2.2存储过程和函数0

2.2.1存储过程的声明0

2.2.2存储过程的修改0

2.2.3函数的声明和修改0

2.3触发器0

2.4游标0

2.4.1声明游标0

2.4.2打开游标0

2.4.3使用游标0

2.4.4关闭游标0

2.5小结0

习题0




第3章数据库设计和ER模型0

3.1关系代数0

3.1.1关系代数的由来0

3.1.2关系代数运算符0

3.1.3关系代数与SQL的转换0

3.2数据库设计0

3.2.1数据库设计概述0

3.2.2数据库设计的特征0

3.2.3实体联系模型: ER模型0

3.2.4数据库设计流程0

3.2.5数据库设计中的规范化设计0

3.3数据库约束0

3.3.1数据完整性0

3.3.2约束操作0

3.3.3非空约束0

3.3.4唯一约束0

3.3.5主键约束0

3.3.6外键约束0

3.3.7条件约束0

3.4小结0

习题0

第4章数据库未来发展趋势0

4.1新硬件驱动的数据库(鲲鹏+昇腾)0

4.1.1处理器架构对数据库系统带来挑战与机遇0

4.1.2异构处理器高速发展为数据库系统创新提出新方向0

4.2新应用驱动的数据库(5G、车、终端云)0

4.2.15G及其相关应用对数据库系统带来的挑战与机遇0

4.2.2自动驾驶汽车对数据库系统带来的挑战与机遇0

4.2.3终端云对数据库系统带来的挑战与机遇0

4.3小结0

习题0

第5章GaussDB架构0

5.1GaussDB发展历史0

5.1.1概述0

5.1.2GMDB内存数据库历史

5.1.3GaussDB 100 OLTP数据库历史

5.1.4GaussDB 200 OLAP数据库历史

5.2GaussDB架构概览

5.2.1数据库架构变化

5.2.2GaussDB关键技术架构

5.3GaussDB 100 OLTP数据库架构

5.3.1设计思想与目标客户

5.3.2分布式强一致的架构

5.3.3可插拔存储引擎架构

5.4GaussDB 200 OLAP数据库架构

5.4.1设计思想与目标客户

5.4.2面向数据分析的高效存储和计算架构

5.4.3分布式并行计算架构

5.4.4并行数据加载

5.5GaussDB云数据库架构

5.5.1设计思想与目标客户

5.5.2弹性伸缩的多租户数据库架构

5.6GaussDB多模数据库架构

5.6.1设计思想与目标客户

5.6.2面向数据强一致的多模数据库系统架构

5.6.3面向极致性能的多模数据库系统架构

5.7小结

习题

第6章面向鲲鹏和昇腾的创新架构

6.1鲲鹏和昇腾简介

6.2面向鲲鹏的创新架构

6.3面向异构AI昇腾芯片的创新架构

6.3.1昇腾AI芯片介绍

6.3.2openGauss在昇腾AI芯片下的技术创新

6.4智能芯片群调度模块

6.5小结

习题

第7章openGauss SQL引擎

7.1SQL引擎概览

7.2SQL解析

7.3查询优化

7.3.1查询重写

7.3.2路径搜索

7.3.3代价估算

7.4小结

习题

第8章openGauss执行器技术

8.1openGauss执行器概述

8.2openGauss执行引擎

8.2.1执行流程

8.2.2执行算子

8.2.3表达式计算

8.3openGauss执行器的高级特性介绍

8.3.1编译执行

8.3.2向量化引擎

8.4小结

习题

第9章openGauss存储技术

9.1openGauss存储概览

9.2openGauss行存储引擎

9.2.1行存储引擎总体架构

9.2.2行存储的基本模型与页面组织结构

9.2.3行存储的多版本管理以及DML操作

9.2.4基于CSN的MVCC机制

9.2.5行存储的空间回收

9.2.6行存储的共享缓存管理

9.2.7并行日志系统设计

9.2.8持久化及故障恢复系统设计

9.3openGauss列存储引擎

9.3.1列存储引擎的总体架构

9.3.2列存储的页面组织结构

9.3.3列存储的MVCC设计

9.3.4列存储的索引设计

9.3.5列存储自适应压缩

9.3.6列存储的持久化设计

9.4openGauss内存引擎

9.4.1内存引擎的兼容性设计

9.4.2内存引擎索引

9.4.3内存引擎的并发控制

9.4.4内存引擎的内存管控

9.4.5内存引擎的持久化

9.5小结

习题

第10章openGauss事务机制

10.1openGauss事务概览

10.1.1显式事务和隐式事务

10.1.2单机事务和分布式事务

10.2openGauss事务ACID特性介绍

10.2.1openGauss中的事务持久性

10.2.2openGauss中的事务原子性

10.2.3openGauss中的事务一致性

10.2.4openGauss中的事务隔离性

10.3openGauss并发控制

10.3.1读读并发控制

10.3.2读写并发控制

10.3.3写写并发控制

10.3.4并发控制和隔离级别

10.3.5对象属性的并发控制

10.3.6表级锁、轻量锁和死锁检测

10.4openGauss分布式事务

10.4.1分布式事务的原子性和两阶段提交协议

10.4.2分布式事务一致性和全局事务管理

10.5小结

习题

第11章openGauss安全

11.1openGauss安全机制概览

11.2openGauss安全认证

11.2.1客户端配置信息

11.2.2服务端认证方法

11.2.3安全认证通道

11.2.4RFC5802认证协议

11.3openGauss角色管理机制

11.3.1角色管理模型

11.3.2三权分立模型

11.3.3对象访问控制

11.4openGauss审计与追踪

11.4.1审计记录机制

11.4.2审计追踪机制

11.4.3统一审计

11.5openGauss数据安全技术

11.5.1数据加密算法

11.5.2数据脱敏技术

11.5.3透明加密技术

11.5.4全程加密技术

11.6openGauss云安全技术

11.6.1IAM认证

11.6.2安全chroot技术

11.6.3防篡改技术

11.7openGauss智能安全机制

11.8小结

习题

附录A习题答案

附录B数据库相关列表

附录C术语表

参考文献