前言

为什么要写这本书

数据库技术,经过几十年的发展,不仅没有被淘汰,反而随着时间的推移,数据库引擎的高精尖程度、架构的复杂度、市场的普及度,都达到了计算机领域非常领先的程度,与操作系统、网络并称为“计算机三驾马车”。

我还记得读大学时,数据库市场正是Oracle数据库“一家独大”,那个时候,学校的图书馆里收藏着盖国强老师的Oracle系列丛书,它们成为我的数据库启蒙图书。但技术的演进日新月异,互联网的兴起带来了新的生机,从我工作开始,越来越多的数据库出现在我的面前,有传统的商业数据库,如Oracle、SQL Server、DB2;也有开源数据库,如MySQL、PostgreSQL;后来又出现了一种新的数据库,即NoSQL数据库,MongoDB、Redis接踵而来;没过几年,又出现了分布式数据库、新型数据库,等等。

除此之外,越来越复杂的高可用方案,充斥在各种技术博客中;五花八门的Bug和错误代码,拥挤在搜索引擎里;越来越多的新名词、新概念,堆砌在招聘简介中。BBS里一整页的分区板块;微信交流群、钉钉分享群永远都有1000人,加不进去,有些群名赫然写着1群、2群、3群,俨然有一种知识大爆炸的感觉,既让人为这种繁荣热闹的场面而兴奋,又让人为这些快速迭代的变化而焦虑。

我在学习Oracle的时候,以为“一招鲜”,可以“吃遍天”,但工作后发现这个想法是十分幼稚的,在找工作时,越来越多的公司要求有多种数据库经验;随着云数据库的兴起,业务更快速地接入多种数据库的难度也在大大降低。于是,我又萌生了另外一个“幼稚”的想法——如果能学会所有数据库就好了。

经过九年的时间磨砺,我没有想到,我正在逐渐接近这个“幼稚”的想法;我也没有想到,会为了这个“幼稚”的想法,组织了一群相信我的人,一起来撰写这么一本书,希望能把纷繁变化的云数据库世界展现给广大读者。

不同的时代,会有不同的背景。在今天这个时代,有两个大背景:

“去IOE”运动风行多年,国产数据库如雨后春笋,百家争鸣,被收录的国产数据库多达上百种;其中阿里云作为国产数据库厂商代表,首次代表中国公司,进入Gartner全球数据库领导者象限,这是国内厂商在数据库领域的历史性突破。

21世纪以来,互联网兴盛蓬勃,云计算逐渐成为互联网时代的新型基础设施,阿里云作为国内领先的云计算厂商,有幸参与到这个历史使命中,对数据库的架构选型和深度使用,也注定在历史上留下自己的脚印。

如此百花齐放、波澜壮阔的浪潮,不禁让我想起我们常说的那句话:澎湃算力,世界动力。

关于本书

本书从数据库的技术基础要素、架构、实践等多个方面出发,分层次展开介绍了云数据库的内核、管控、高可用、云化、国产设计等特点,从技术到工程实践,凝聚了阿里云技术专家们多年的努力与总结。我们期望本书可以给正在上云、即将上云以及期望了解云数据库的决策者和技术人员一些帮助,同时也希望本书可以给已经在使用云数据库的专家、技术人员带来一些新的全局认识,帮助他们更好地使用云数据库。

本书内容安排如下:

第1章和第2章,重点讲解了关系型数据库的种种设计,尤其是它们的特点和区别;非关系型数据库究竟是什么,能解决什么问题;新型数据仓库的出发点和优势在哪里,以及新型数据库(NewSQL)到底新在哪里,方向又在何处。各章节除了讲解社区版的设计,还对比了阿里云数据库在云化设计上的创新和优势。

第3章,结合前两章介绍的原理知识,讲解了一些常见问题的架构选型思路;还结合各行各业的案例,介绍了在不同场景下,如何使用不同的数据库组合解决业务难题。

第4章,重点讲解了如何将数据库从本地迁移到云上,按数据库种类,分别讲解了各种同步工具,并结合不同业务,分别介绍了在不同切换需求下如何进行业务割接。

第5章,重点讲解了阿里云数据库的一些特殊概念,方便读者理解阿里云在云数据库管控方面的设计以及必要知识。

第6章至第9章,从运维管理的角度出发,介绍了阿里云数据库的配套组件,它们分别是DMS,用于安全生产和多类型数据库管理访问平台;DAS,自治化数据库优化平台;DBS,备份恢复管理平台;CMS,配套云监控平台。

致谢

首先,感谢“阿里云数字新基建系列”丛书的编委会,感谢各位专家,包括:李津、李飞飞、张卓、黄贵、李圣陶、万谊平,他们在图书编写中给予了我们许多方向上的指导;感谢所有在图书编写过程中给予我们帮助的同事,包括:李广望、沈乘黄、胡中泉、潘文宇、王勇猛、陈宗志、何雷、王若、童家旺、杨成虎、王佳毅、朱国云、王宇辉、李德坤、周建平、崔屿、张雯、江冉、李一帅、秦扬。没有你们的帮助和支持,我们无法完成这本书。

其次,感谢电子工业出版社博文视点的张彦红、葛娜、刘博、高丽阳、李玲等老师,感谢你们在图书的编辑和推进中给予我们诸多帮助,没有你们,这本书也不会以此形式和广大读者见面。

最后,感谢我的Mentor,段凌,来自微软中国的数据库资深专家,以及阿里巴巴的师兄,田杰,来自阿里云数据库事业部的高级专家。没有你们的教导和培养,我亦无法担此角色来统筹撰写这本书。同时感谢我的家人,对我的鼓励与慰藉。

希望本书能够让所有对云数据库感兴趣的朋友都有所收获,或有所感悟。因水平有限,书中难免有笔误、差错或遗漏等问题,希望广大读者能把发现的错误告诉我们,我们将不胜感激。欢迎大家发送邮件到sancai.zm@alibaba-inc.com。