深入浅出Greenplum分布式数据库:原理、架构和代码分析
定 价:49.8 元
丛书名:大数据技术丛书
读者对象:本书适用于数据库领域的科研工作者和学者
在云计算和互联网快速发展的驱动下,分布式技术领域产生了很多新的热点,分布式数据库就是其中之一。但是,目前对分布式数据库的理解和研究多停留在理论层面,本书以Greenplum分布式数据库为例,深入剖析分布式技术在工业级产品里的实现细节,为读者呈现从理论到实践的全景图。 本书共3篇:第1篇主要介绍分布式数据库基础理论,包括经典的CAP理论、一致性算法相关的理论、并发控制相关的理论等;第2篇具体介绍Greenplum数据库,从分布式事务、分布式计算和分布式存储3个方面,深入代码层级,讲述分布式理论在工业上的实现;第3篇是总结和展望,介绍云原生数据库和新技术带给Greenplum和数据库管理系统的机遇和挑战。 本书打破以理论介绍和架构介绍为主的思路,深入分析工业化的实现,实践性强。本书主要面向数据库领域的科研工作者和学者,也可作为高校计算机类专业的分布式数据库相关课程的参考资料。
实践导向:本书打破传统理论介绍模式,深入剖析Greenplum分布式数据库的工业化实现,涵盖分布式事务、计算和存储,为读者提供从理论到实践的全面解析。源码级分析:作者凭借丰富的Greenplum一线经验,对Greenplum的架构和源码进行深入讲解,帮助读者更直观地理解分布式数据库的相关理论。技术前瞻:探讨云原生数据库和新技术为分布式数据库带来的机遇与挑战,为数据库领域的科研工作者和开发者指明研究方向和发展趋势。
王凤刚 分布式数据库开源项目Greenplum和HAWQ的贡献者; Greenplum相关产品工作经验9年; 500强企业服务经验14年; 云计算和分布式系统的开发和运维经验18年。
第 1篇 原理篇第 1章 云计算时代的数据库 21.1 数据库的历史和发展 21.2 云计算带来的挑战 31.3 云原生数据库的主要特点 3第 2章 分布式数据库基础理论和架构 52.1 分布式数据库理论概述 52.1.1 CAP理论和BASE理论 52.1.2 一致性算法 62.2 典型的分布式数据库 92.2.1 OLTP型数据库 92.2.2 OLAP型数据库 92.2.3 HTAP型数据库 9第3章 并发控制 103.1 概述 103.2 并发控制的分类 103.3 基于锁的并发控制 113.4 基于时间戳的并发控制 123.5 基于验证法的乐观并发控制 133.6 MVCC技术 133.7 快照隔离技术 163.8 可序列化快照隔离 173.9 死锁管理 203.10 B*树和LSM树 25第 2篇 Greenplum架构和源码分析第4章 Greenplum总体架构 304.1 概述 304.2 数据库通信协议 334.2.1 启动阶段 354.2.2 取消请求 364.2.3 常规阶段 364.3 Greenplum的架构和核心引擎 384.3.1 Greenplum主要模块介绍 384.3.2 通用场景 404.3.3 Interconnect模块 424.3.4 gang和slice 54第5章 分布式事务的实现 625.1 分布式事务的原理和两阶段提交 625.1.1 事务隔离 625.1.2 两阶段提交 655.2 steal/force和WAL协议 665.3 PostgreSQL事务处理和状态机介绍 685.3.1 PostgreSQL事务处理 695.3.2 PostgreSQL状态机 705.4 分布式事务状态机 725.5 简单完整的分布式事务 755.5.1 初始化和begin命令 755.5.2 insert命令 795.5.3 两阶段提交的实现 815.6 分布式事务如何容错 93第6章 分布式计算的实现 1006.1 Greenplum的执行计划 1006.1.1 查询优化器 1006.1.2 Greenplum的统计信息 1026.1.3 Legacy优化器概述 1026.1.4 Orca优化器简介 1096.2 运行执行器的算子 1116.2.1 常规算子 1116.2.2 具有特殊功能的算子 1146.2.3 Motion算子 1176.2.4 运行执行器综述 1186.3 本地共享快照 1226.4 分布式快照 1256.4.1 分布式快照的实现方式 1256.4.2 可见性判断 1296.5 共享内存 1336.6 哈希和重分布 134第7章 分布式存储的实现 1407.1 Greenplum数据的分布方式 1407.1.1 哈希分布 1407.1.2 随机分布 1417.1.3 复制分布 1427.2 Greenplum数据库的高可用性 1427.3 heap表和AO表 1437.4 外部表存储 1447.4.1 Libcurl库函数 1457.4.2 外部表协议gpfdist 1467.4.3 Scan算子和gpfdist客户端 1487.4.4 gpfdist服务端 153第3篇 数据库和新技术第8章 云原生数据库 1588.1 Greenplum的云原生尝试 1588.2 VMware多云战略和Greenplum 1598.3 HAWQ项目介绍 160第9章 新技术的机遇 1629.1 NVM存储技术 1629.2 虚拟化技术 1639.3 容器技术 164