网站首页  软件下载  游戏下载  翻译软件  电子书下载  电影下载  电视剧下载  教程攻略

请输入您要查询的图书:

 

书名 云原生数据库:原理与实践
分类 计算机-操作系统
作者 李飞飞 周烜等
出版社 电子工业出版社
下载
简介
产品特色

详情-01.jpg

编辑推荐

适读人群 :本书可作为高等院校信息类专业的本科生和硕士研究生教材,也可作为数据库行业的内核研发和系统运维等从业人员的参考书。

阿里云智能事业群总裁、达摩院院长张建锋,中国工程院院士陈左宁,中国科学院院士梅宏倾情作序!

阿里云智能数据库事业部总负责人李飞飞博士,华东师范大学数据科学与工程学院副院长周烜教授,领衔撰写!

阿里云数据库领域数十年的研发实践经验结晶

兼具理论深度和实践细节,启发深入思考

开放性地探索数据库前沿发展方向

诠释云原生分布式数据库4大核心技术:资源池化、弹性扩展、智能运维和离在线一体化

详解未来数据库发展6大趋势:云原生与分布式、大数据与数据库一体化、软硬件一体化、多模数据、智能化运维、安全可信

内容简介

本书详细剖析了作为核心基础软件系统的数据库在云计算时代的技术演进历程,从架构设计、实现机制和系统优化等多个角度阐述传统数据库技术是如何一步步发展到云原生形态的。本书强调理论和实践的充分结合,分析MySQL、PostgreSQL等工业界“活”的系统实现数据库的SQL优化与执行、事务处理、缓存与索引等原理,在面对实际应用需求时做了哪些权衡与折中,面对复杂的应用场景如何优化,以及做出种种选择背后的原因。同时,本书结合阿里云在数据库领域的研发实践经验,着重讲述现代数据库从系统进化到服务的一系列核心技术原理,例如利用云计算资源池化技术、分布式技术实现数据库的高可用、弹性扩展和按需使用等。

本书内容翔实,兼具理论深度和实现细节,同时开放性地探索了数据库的新发展方向,能够启发读者进一步深入思考。本书可作为高等院校信息类专业的本科生和硕士研究生教材,也可作为数据库行业的内核研发和系统运维等从业人员的参考书。

作者简介

李飞飞

阿里巴巴集团副总裁,阿里云智能事业群数据库产品事业部与达摩院数据库与存储实验室负责人,ACM杰出科学家。曾获ACM与IEEE多项大奖,世界互联网大会2019全球领先科技成果奖,浙江省科技进步一等奖,中国电子学会科技进步一等奖等。带领团队研发了阿里云企业级云原生数据库系统。担任多个国际及国内一流学术期刊和学术会议的编委、主席。中国计算机学会CCF大数据专家委员会副主任,数据库专业委员会常委。担任多个国际一流学术期刊和学术会议的编委、主席(VLDB 2021与IEEE ICDE 2021工业界主席)。

周烜

华东师范大学数据科学与工程学院教授、副院长。2001年本科毕业于复旦大学,2005年在新加坡国立大学取得博士学位,2005年至2010年期间先后在德国 L3S 研究中心和澳大利亚联邦科工组织从事科研工作,随后在中国人民大学任教,于2017年加入华东师范大学。他的研究兴趣包括数据库系统和信息检索技术。他曾参与和负责多个国内外的科研项目和工业合作项目,开发各种数据管理系统,在分布式数据库上的研究成果获2019年国家科技进步二等奖。

蔡鹏

华东师范大学数据科学与工程学院教授,博士生导师。2015年6月加入华东师范大学数据科学与工程学院,在此之前先后就职于IBM中国研究院和百度(中国)有限公司。在VLDB、ICDE、SIGIR、ACL等国际顶级会议上发表多篇学术论文。目前的研究方向为内存事务处理、基于机器学习技术的自适应数据管理系统。曾获国家科技进步二等奖、教育部科技进步一等奖。

张蓉

华东师范大学数据科学与工程学院教授,博士生导师。自2001年起从事分布式系统、数据库相关研究与开发工作,曾作为负责人或者主要参与人员参加国家自然科学基金课题、国家863计划项目及多项企业合作项目的研究。工作成果获得上海市科技进步一等奖(排名第四)以及国家科学技术进步二等奖(排名第七)。研究兴趣包括分布式数据管理、数据流管理和大数据基准评测。

黄贵

阿里巴巴资深技术专家,阿里云数据库总架构师,在阿里巴巴一直从事分布式系统、分布式数据库内核的研发工作,曾参与自研数据库PolarDB系统的研发工作。技术专长和研究兴趣为分布式系统设计、分布式一致性协议、数据库内核实现等领域,曾在SIGMOD、FAST、VLDB等国际顶级会议上发表多篇学术论文,获得中国电子学会科技进步一等奖。

刘湘雯

阿里云副总裁、阿里巴巴达摩院秘书长、中国计算机学会常务理事。加入阿里巴巴十多年来,先后带领团队搭建了阿里巴巴集团技术大中台战略的三层治理体系,完成了阿里巴巴达摩院从0到1的建设落地。当前任阿里云市场营销与公共事务部总经理,代表阿里云对外构建了由高校、政府、开发者、创新创业者组成的合作网络,推动数字经济时代阿里云2.0品牌的升级。

精彩书评

基于云平台提供数据管理服务自然产生了对云原生数据库的需求。本书以作者主持研发的PolarDB为例,从理论到实践,系统地阐述了云原生数据库的原理与技术,语言简洁明快,论述深入浅出,是一本值得一读的好书!

李战怀

西北工业大学教授,中国计算机学会数据库专业委员会主任

云原生数据库是最适用于云计算平台的数据库系统,是数据库大家族的新宠。本书作者是云计算和数据库领域的专家,内容具有很高的参考价值。

杜小勇

中国人民大学教授,中国计算机学会大数据专家委员会主任

数据库自20世纪60年代诞生以来,一直被认为是信息社会的关键基础设施。近20年来,互联网的发展和普及深刻地改变世界和人类本身,未来信息社会的形态逐渐明晰,经济社会的数字化转型蓄势待发。数据库遭遇互联网是最近10年数据库发展遇到的挑战和机遇,数据库研发因此重焕青春。云原生数据库是数据库遭遇云计算的必然产物,云原生的根本理念是把数据库能力服务化、大众化,把数据库变成公用事业。这是发挥数据威力,为数字化转型提供赋能平台的第一步。本书系统总结了阿里巴巴集团在云原生数据库方面的探索,从实践中来,到实践中去,相信本书对我们在这一新领域抢占先机大有裨益。

周傲英

华东师范大学教授、副校长,资深数据库学者

云计算平台使得云原生数据库得以兴起和普及。本书从理论和实践两个方面展示了云原生数据库的基本原理和核心技术。作者长期从事数据库理论研究,成果丰硕。他们结合阿里云原生数据库PolarDB的研发经验撰写此书,非常值得仔细研读!

彭智勇

武汉大学教授、大数据研究院副院长,中国计算机学会数据库专业委员会副主任

云原生数据库是数据库领域近10年来的重大革新,引领了数据库的发展。本书详细阐述了云原生数据库的核心技术,例如计算存储分离、日志即数据、弹性多租等,是云原生数据库领域的宝书,值得仔细阅读。本书作者是数据库领域学术界和工业界的卓越代表,书中内容凝聚了对云原生数据库的思考。

李国良

清华大学教授,清华大学计算机系副主任,中国计算机学会数据库专业委员会副主任

云原生数据库可以说是当下最火的数据库产品技术形态,具有高扩展性、高可用性等优良特性,相关领域正在蓬勃发展。本书是有关云原生数据库的开创性著作,覆盖了关键理论和技术实现。作者是来自企业界和学术界的资深学者和优秀实践者,强烈推荐给对数据库技术感兴趣的研究生和研发人员。

崔斌

北京大学教授,中国计算机学会数据库专业委员会副主任

数据已成为数字经济的核心生产要素,而数据库是承载数据存储与计算的关键基础软件,对企业业务发展至关重要。信息通信服务商同样高度关注数据库技术的发展。随着云计算和大数据的蓬勃发展,数据库也从传统定制化部署,转型为按需取用、弹性伸缩的云服务,给业务人员带来更多的灵活性和更高的性jia比。李飞飞博士等人所著的《云原生数据库:原理与实践》详细阐释了阿里云数据库在云化过程中的技术发展与实战经验。相信这本书能给各位读者带来启发,更好地实施企业上云,加速数字化转型。

陈国

中移信息技术有限公司副总经理

随着科技的发展和数字化转型的推进,数据作为核心资产,越来越受到重视;而作为数据存储与计算的载体,数据库的发展也日新月异。我把数据库的发展按次序定义为传统数据库、云原生数据库和广义数据库。而当前,云原生数据库正以一种崭新的技术架构大行其道,蓬勃发展,为云计算的落地做出了不可磨灭的贡献。

当很多人还在迷茫什么是云原生时,李飞飞和周烜等几位老师的巨著横空出世,可谓适逢其时。几位老师的理论积累深厚,行业视野高瞻远瞩,对阿里巴巴数据库产品的最佳实践也如指诸掌。在他们的共同努力下,本书对理论概念的讲解和技术实现的描述一气呵成,对文字的把控也游刃有余,非常适合数据库爱好者阅读。期待本书早日面世,泽被大众。

周彦伟

极数云舟创始人&DTark总架构师,中国计算机行业协会数据库专委会会长,浙江大学校外导师

数据库已进入百家争鸣的新时代!谁能在这场角逐中脱颖而出?本书为从业者指明了道路——拥抱云原生。本书理论结合实践,在技术选型方面也着墨较多,凝聚作者们多年的行业经验和心血,引领读者概览云原生数据库的全貌,兼具细节与深度,颇具匠心,当有其所值!

张文升

PostgreSQL中文社区主席,《PostgreSQL实战》《PostgreSQL指南——内幕探索》作者

目录

第1章 数据库发展历程1

1.1 数据库发展概述2

1.1.1 萌芽2

1.1.2 商业化起步3

1.1.3 发展成熟3

1.1.4 云原生与分布式时代4

1.2 数据库技术发展趋势6

1.2.1 云原生与分布式6

1.2.2 大数据与数据库一体化6

1.2.3 软硬件一体化7

1.2.4 多模7

1.2.5 智能化运维8

1.2.6 安全可信8

1.3 关系数据库主要技术原理8

1.3.1 接入管理9

1.3.2 查询引擎10

1.3.3 事务处理14

1.3.4 存储引擎17

参考文献19

第2章 数据库与云原生20

2.1 数据库在云时代的发展21

2.1.1 云计算时代的兴起21

2.1.2 数据库作为一种服务22

2.2 数据库在云原生时代面临的挑战23

2.3 云原生数据库的主要特点24

2.3.1 分层架构24

2.3.2 资源解耦与池化24

2.3.3 弹性伸缩能力24

2.3.4 高可用与数据一致性25

2.3.5 多租户与资源隔离26

2.3.6 智能化运维26

参考文献26

第3章 云原生数据库架构27

3.1 设计理念28

3.1.1 云原生数据库的本质28

3.1.2 计算与存储分离29

3.2 架构设计30

3.3 典型的云原生数据库31

3.3.1 AWS Aurora31

3.3.2 PolarDB37

3.3.3 Microsoft Socrates40

参考文献44

第4章 存储引擎45

4.1 数据组织46

4.1.1 B+树47

4.1.2 InnoDB引擎中的B+树49

4.1.3 LSM-tree52

4.2 并发控制56

4.2.1 基本概念56

4.2.2 锁方法56

4.2.3 时间戳方法58

4.2.4 MVCC61

4.2.5 InnoDB MVCC的实现63

4.3 日志与恢复65

4.3.1 基本概念65

4.3.2 逻辑日志66

4.3.3 物理日志66

4.3.4 恢复原理67

4.3.5 MySQL的Binlog68

4.3.6 InnoDB的物理日志68

4.4 新型LSM存储引擎70

4.4.1 PolarDB X-Engine70

4.4.2 高性能事务处理72

4.4.3 软硬结合优化75

4.4.4 低成本分层存储78

4.4.5 双存储引擎技术84

4.4.6 实验评估85

参考文献88

第5章 高可用共享存储系统89

5.1 高可用基础90

5.1.1 Primary-Backup90

5.1.2 Quorum92

5.1.3 Paxos93

5.1.4 Raft95

5.1.5 Parallel Raft98

5.2 集群高可用100

5.2.1 MySQL集群高可用100

5.2.2 PolarDB高可用103

5.3 共享存储架构116

5.3.1 Aurora存储系统117

5.3.2 PolarFS119

5.4 文件系统优化121

5.4.1 用户态I/O计算121

5.4.2 近存储计算124

参考文献130

第6章 数据库缓存131

6.1 数据库缓存简介132

6.1.1 数据库缓冲作用132

6.1.2 缓冲池132

6.2 缓存恢复133

6.2.1 云环境对缓存的挑战133

6.2.2 基于CPU与内存分离的缓存恢复133

6.3 PolarDB的实践135

6.3.1 缓冲池的优化135

6.3.2 数据字典缓存和文件系统缓存的优化140

6.3.3 基于RDMA的共享内存池141

..

参考文献220

精彩书摘

3.1.1 云原生数据库的本质

在理解云计算趋势下的数据库形态及技术趋势之前,需要先探讨云计算和数据库的本质。

云计算在本质上是将各类信息技术基础资源“池化”,将客户所需的计算、通信、存储资源纳入统一的资源池进行管理。用户在实际使用时,对于大型信息系统或信息基础设施的构建,用户无须自建机房、购买硬件设施、搭建基础网络、安装系统和软件等,极大地减少了前期的IT设施投入成本;同时,借助云计算资源的虚拟化和池化技术,用户拥有了基础设施弹性能力,能快速应对业务流量的变化。对于云服务提供商而言,规模化的资源供应、使用、运维和管理,也极大地提升了云服务提供商的技术、供应链管理等能力,从而形成了规模效应,大大提升了整体的资源利用率。

而对于数据库来说,可以从数据库的用户入手分析。用户使用数据库的目的,是希望借助数据库的计算和存储能力,完成数据的生产、存储、处理和消费的全链路过程。因此,从能力上来说,数据库系统必须要能为客户的数据生产、存储、处理和消费全链路提供功能性和非功能性需求支撑。传统的数据库系统软件是运行于冯?诺伊曼体系的硬件系统之上的。冯?诺伊曼体系的基本原理是“存储程序和程序控制”:“存储程序”是指计算机运行的代码和数据都要有特定的地方进行保存;“程序控制”是指计算机按一定的逻辑顺序存取指令并有效执行。对应到数据库系统软件之上,数据库管理系统的本质就是用户希望借助数据库管理系统提供的“计算+存储”能力,通过计算节点的计算能力对存储中的数据进行用户指定的分析和计算来获得计算结果,最终实现数据的应用。

从数据库系统的本质来看,计算和存储以及各组件间的通信能力是数据库系统必须具备的。因此,在云计算时代下,如何借助云计算提供的强大的计算、存储和通信能力,实现数据库系统在各个层面的高可用、高性能、弹性和高安全性是目前业界研究的重点。不同的架构与云计算架构的契合度是不同的。对于单机版数据库,可以安装在一台云厂商提供的云服务器上,其计算和存储能力受限于云服务本身计算和存储能力的上限,而当前云服务器主流技术是虚拟化技术,因此可以认为单机版数据库如果部署在云主机上,符合如下性能限制公式:

数据库 < 云主机(容器)< 宿主机(物理机器)

因此,传统的单机版数据库管理系统部署在云主机上,其实只是把云主机当成普通服务器在用,并不能充分地利用云计算的优势。比单机版更进一步的是分布式的数据库管理系统,后者可以根据计算复杂度和存储规模,增加适当的节点,满足计算和存储要求,因此在一定程度上满足了可扩展性的要求。但是对于集群中的单个节点,其处理瓶颈依然满足上述公式。尽管大多数数据库可以在云中运行,但想要充分体现和利用云平台的优势还要取决于数据库的体系架构。从长远来看,在云计算平台上设计、构建和运行数据库系统能够获得更大的价值,而设计出符合云计算的资源弹性管理特征的数据库系统架构才是云原生数据库的本质。

随便看

 

霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。

 

Copyright © 2002-2024 101bt.net All Rights Reserved
更新时间:2025/3/14 11:15:57