前言
PostgreSQL近几年来保持着强劲的发展趋势,在DB-Engines数据库流行度排行榜上稳居前几名,呈现较快增长趋势。PostgreSQL得益于其强大的SQL语法功能,在全球得到广泛应用,尤其是欧美等国,在我国也被广泛认可和采用,已经被广泛应用于金融、证券、电信、工业控制、农业现代化、移动互联网、社交媒体等领域。
PostgreSQL版本发布节奏相当快,PostgreSQL中文社区的活跃程度非常高。用户在实际工作中一般会选择稳定的版本,新版本通常要观察一段时间,等待足够稳定之后,才会真正上线使用。据调查,现在商用的主流版本大多还是PostgreSQL 9,相信很快PostgreSQL 10会成为实际工作中的主流版本。
本书的内容源于作者及所在数据库团队多年来的使用经验总结和提炼,也参考和引用了一些其他书籍及技术博客的材料,特别是PostgreSQL中文社区的官方文档,在此表示衷心的感谢!
作者把多年来在数据库研发及技术支持过程中遇到的一些经典案例列举给读者,希望对读者的学习有所帮助。
本书的篇章内容较多,涵盖PostgreSQL数据库的基本功能和高级功能,总体上,把一些比较高级的话题都放到后面几章进行介绍,如性能优化、服务端编程、高可用方案等。每个章节基本上是相对独立完整的,读者可以根据自己的情况跳过前面的基础章节,选读自己感兴趣的章节。
本书的特色
1.以PostgreSQL 10版本为基准,内容较为新颖
PostgreSQL 10版本增加了不少新功能,如声明式表分区等,同时某些原有功能也会发生一些变化,如WAL日志目录名称从“pg_xlog”变成了“pg_wal”。本书的所有实例(示例)都是基于PostgreSQL 10版本的。
2.包含丰富的实例,可操作性强
本书在介绍数据库的SQL语法、数据类型及各种功能时,都同步提供了丰富的实例,以帮助读者更好地理解和掌握这些知识点。全书包含了100多个实例,读者可以真正做到“在操作中学习”。
3.书中很多实例来源于真实业务场景,实用性强
本书的很多实例是作者从真实业务场景中提炼出来的,如第15章和第16章中的实例,大多是中兴通讯数据库团队在调优数据库性能过程中遇到过的问题。这些实例实用性很强,可以帮助读者更好地应对相似问题。
4.内容循序渐进,可读性强
本书在结构上采用循序渐进的策略,先从PostgreSQL的起源发展及安装启动开始,接着带领读者熟悉PostgreSQL的基本操作,之后逐步添加新的知识点。对于初学者来说,只要按顺序逐章阅读,即可轻松学会本书的内容,逐步成为PostgreSQL应用的高手。
5.提供了操作的素材
数据库中的很多操作都需要操作环境,例如,要查询数据,需要有一个数据库及数据,否则操作无法进行。所以,本书提供了可操作的素材,如“第6章 查询和修改数据”“第7章 索引”“第8章 视图”“第9章 触发器”“第10章 表继承和表分区”等。
6.注重方法和经验的传递
本书在讲解知识时,更注重方法和经验的传递。全书共有几十个“提示”体例,其内容都是成功经验分享与易错事项总结,有关于经验技巧的,也有关于风险规避的,都可以帮助读者在学习的路途上披荆斩棘,快速进步。
本书适用的读者对象
● 没有任何数据库基础的初学者。
● 有一定数据库基础,想精通PostgreSQL数据库编程的人员。
● 有一定PostgreSQL数据库编程基础,没有项目实践的人员。
● 大中专院校及培训学校的老师和学生。
关于作者
屠要峰
现任中兴通讯数据库专家委员会主任、CCF信息存储委员会委员、中国开源软件联盟理事。他拥有20多年大型项目架构设计及实战经验,主要研究方向为数据库、存储、分布式计算。
他负责中兴通讯数据库平台的研发及推广应用,主持过NoSQL、云存储等多个重要数据库系统的研发。积极参与开源技术社区的建设,推动开源技术的共享互通和稳定发展。
陈河堆
现任中兴通讯数据库平台首席专家,PostgreSQL中文社区核心组成员,拥有10多年数据库研发经验。他曾参与公司高性能内存数据库、分布式数据库和分布式缓存等系统的设计和开发,常年活跃于PostgreSQL、MySQL、Percona、Vitess等开源技术社区,坚持推动PostgreSQL在中国的发展,积极参与PostgreSQL中文社区主办的各种技术交流会。
本书是写作团队共同努力的成果,写作团队成员大部分来自中兴通讯数据库研发团队。下述人员参与了本书相关章节的编写工作,包括王文娟、王涵毅、卞福升、陆晓飞、闫宗帅、徐栋、孔鲁、汪彦舒、韩烨、吴绩敏、屠雪真、丁毅、高洪、郭斌、黄震江、姚莉、(排名不分先后)。此外,要特别感谢李宏玲,她对本书知识内容的校验做出了不可或缺的贡献。
感谢中兴通讯数据库研发团队的所有成员,你们多年的潜心研究和积累是本书的基石。
感谢所有评审本书并对本书提出过建议的朋友,你们的帮助对本书的成稿非常重要。
感谢关心本书的各界朋友,你们的关心与期望是我们全心全意写好本书的动力。
在编写过程中,我们尽己所能将最好的知识讲解呈现给读者,但由于笔者水平有限,难免有疏漏和不妥之处,敬请读者不吝指正。如果读者在学习中遇到困难和疑问,或者有不同建议,可写信至电子邮箱pg@ZTE.com.cn。
屠要峰 陈河堆
2019年9月
读者服务
扫码回复:36901
● 获取本书配套代码
● 获取更多技术专家分享视频与学习资源
● 加入读者交流群,与更多读者互动