推荐序
As the author, I’m very excited that this book got translated to Chinese, for which I’m very grateful to Mr. Cancan. This translation will surely contribute to growing popularity of PostgreSQL in China. I hope that many readers will get acquainted with this great database system and, perhaps, will learn something new about it. Happy reading!
—— Egor Rogov, Author of 《PostgreSQL 14 Internals》
在这个快速发展的信息技术时代,PostgreSQL 凭借其卓越的性能和高度的可扩展性,赢得了广大开发者的青睐。PostgreSQL 的设计理念强调扩展灵活性、安全及可靠性,支持除常见关系数据库以外的 JSON、向量、时序、图、时空地理信息、全文检索等多种数据模型和索引方法,能够满足从个人项目到大型企业应用的各种需求。作为 PostgreSQL 社区中的知名博主,熊灿灿通过其活跃的公众号,已经成为许多 PostgreSQL 爱好者心中的良师益友。
多年来,他持续分享高质量的文章,涵盖了从基础入门到高级优化的广泛主题,帮助无数读者解决了实际遇到的技术难题。灿灿不仅精通 PostgreSQL 的各项技术,更重要的是,他善于用平实的语言解析复杂的概念,使学习过程变得轻松愉快。现在,我们有幸见证灿灿翻译的最新力作 —《PostgreSQL 14 Internals》中文译本即将出版。
这本书系统地介绍了 PostgreSQL 14 版本内部架构和技术细节。书中不仅包含了大量的理论知识,还有丰富的实例分析,旨在帮助读者全面掌握 PostgreSQL 的工作原理,并能够灵活应用于实际工作中。无论是刚刚接触 PostgreSQL 的新手,还是资深老用户,这本书都将是一部极具价值的参考资料。
—— 德哥, PostgreSQL 中国社区发起人之一
我与本书的译者熊灿灿相识已久,一直以来,他在 PostgreSQL 数据库上的热忱和钻研精神感染和激励着很多人,从他的个人博客,从他积极参与 PostgreSQL 社区的活跃程度,都能够让人深深地体会到他对 PostgreSQL 数据库的热爱。因此,从他告诉我他要翻译本书开始,我就对本书中文版的出版充满了期待。
读过本书英文版的人,应该都深知翻译它很有挑战。一般的数据库管理书籍,不会涉及太多的数据库理论知识和专业术语,翻译的难度相对来讲会小一些。本书既然名为 PostgreSQL Internals,阐述的是 PostgreSQL的内部运作机制,包含了关系性数据库理论的大量知识和专业名词,加上 PostgreSQL 数据库自身就比较偏向于学院派,这些特点就更加突出。那么,翻译它,而且要成功地翻译它就要解决三个问题。一是自身的英文功底要非常扎实;二是需要对关系型数据库理论和 PostgreSQL 有深入透彻的了解,从我个人来看,光有理论知识也不足够,还需要有大量的实践经验,才能够对书中的知识点有更加透彻的理解;而在前两点的基础上,还要考虑如何将本书尽可能翻译得通俗易懂,让广大的 PostgreSQL 数据库爱好者和从业者受益。这不才是翻译本书的本质之所在吗?灿灿也深知这些挑战,凭借着自己的努力,扎实的基础和丰富的实践经验,加上和原作者持续的沟通,终于让我们盼到了此书中文版的面世!
结合自己多年数据库从业的经验,我一直认为,要成为一名优秀的 DBA 数据库管理员,或者用时下更时髦的说法,DBRE 数据库稳定工程师,不能只对每一种数据库浅尝即止,而要深入了解其内部的实现原理和运作机制。只有这样,当解决问题时,或者性能优化时,才能不仅知其然,还知其所以然,也才能有豁然开朗,醍醐灌顶的感觉。就像打通了任督二脉,功力才能够不断地提升。在本书英文版面世之前也有过一本介绍 PostgreSQL 内部机制的材料,一方面基于的数据库版本已经较老 (PostgreSQL 发展迅速,版本迭代更新很快);另一方面只是挑了几个知识点出来,论述不够体系化。而本书则不然,涵盖了 PostgreSQL 的方方面面,系统化地将 PostgreSQL 的内部机制呈现在广大读者面前。从数据组织,到进程和内存管理,到事务隔离和多版本并发控制,到缓冲区和 WAL 管理,再到 PostgreSQL 的锁实现机制,到 SQL 查询的全生命周期,最后到 PostgreSQL 丰富的索引类型及其内部实现,无一不进行了深入的讲解。还配有示例,方便大家对概念有直观的认识,更加便于理解。再加上灿灿的用心翻译,使其成为一本值得珍藏的好书。
从受众来讲,我觉得不仅广大 PostgreSQL 的 DBA 可以从中受益,从事 PostgreSQL 内核研发的众多研发人员也会发现在读完本书后获益良多。一方面原作者供职于 PostgresPro,而 PostgresPro 众所周知是 PostgreSQL 的核心贡献者之一,自然能够让读者更快地熟悉内部实现;另一方面,虽说 PostgreSQL 代码极其工整,便于阅读,可要在短时间内通过阅读代码了解 PostgreSQL 的强大功能和丰富模块的具体实现,还是颇具难度的。而本书可以帮助研发人员更快地了解内部机制的代码实现,更快地上手以及掌握 PostgreSQL。
总之,本书中文译本的面世对于中国广大的 PostgreSQL 爱好者和从业者无疑是一个福音,无论是 DBA 还是内核研发人员,相信都可以通过阅读本书从中获益,能够对 PostgreSQL 这一款优秀的数据库有更加深刻的认识和理解。也希望本书的出版能够在推动中国数据库技术发展的路程上起到一定的作用!
最后,感谢灿灿邀请我为本书中文译本作序,深感荣幸!
—— 汪洋, 2024 年 9 月于深圳
PostgreSQL 在过去十年的发展可谓日新月异,已经成为世界上最流行,最受开发者喜爱的的数据库。而《PostgreSQL 14 Internals》这本书及时地反映了 PostgreSQL 内核上的前沿进展,无论是对开发者还是 DBA 都极具价值。熊灿灿在 PostgreSQL 上有着长期的积累与深厚的功力,灿灿出品,必属精品,这是一本任何数据库专业人士都不应错过的书籍。
—— 冯若航, Pigsty 作者
本书的中文译者熊灿灿同学是一位经验丰富的 PostgreSQL DBA,历时接近 2 年对本书翻译耗费了大量时间和精力,力求对原书内容的准确性和正确性精雕细琢,对很多技术细节进行验证,其目的是确保将原书的精彩呈现给国内的读者朋友,是一本倾注了心血认真翻译的书籍。
原书是一本非常好、非常完整并且有一定深度和广度的 PostgreSQL 著作,它主要为数据库开发人员和 DBA 梳理和详细讲解了 PostgreSQL 的内部机制,对 PostreSQL 的存储管理、多版本并发控制、缓存管理、日志机制和流复制、锁、索引等许多方面,内容非常全面并且有深度,非常适合帮助 DBA 和开发人员对 PostgreSQL 进行深度理解。这是一本非常精彩,翻译更精彩的高质量技术书籍,值得推荐。
—— 朱贤文, 成都文武信息技术有限公司总经理
在我的数据库从业三十多年时间里,一直认为理解数据库内在原理对于数据库运维与优化至关重要。对于 Oracle 内核的理解在这些年分析一些复杂案例的时候起到关键作用 。作为日益流行的开源数据库,学和使用 PostgreSQL数据库的人越来越多,不过到目前为止,解密 PostgreSQL 技术内核的资料少之又少,是十分令人遗憾的事情。
灿灿这些年一直深耕 PostgreSQL,这回他又给大家带来了一个巨大的惊喜,《PostgreSQL 内参:深入解析运行原理》利用他深厚的实战经验,深入解析了 PostgreSQL 的技术内幕,对于正在学习与运维 PostgreSQL 的人来说,是一本必读的佳作。
—— 白鳝, 2024 年 11 月于深圳
身处数据时代,PostgreSQL 举足轻重,而《PostgreSQL 14 Internals》更是一本宝藏之书。其围绕的内核部分,乃数据库关键所在,关乎性能优劣、数据安全与系统扩展,从业者欲在技术上精进,深入研习内核原理必不可少。
好友灿灿,作为本书译者,本身就是 PostgreSQL 领域的行家,其专业能力备受认可,凭借扎实专业知识与对技术的严谨态度,开启这场翻译之旅。过程中,灿灿反复斟酌每一处表述,精心打磨译文,力求精准传递书中深厚的专业知识,让更多人跨越语言障碍,深入探索 PostgreSQL 14 的内核世界,从中汲取养分助力自身成长。
这本书不仅重内核知识本身,更注重深入浅出的剖析过程。读者学到的不是结论,而是思维方式。可以说是收获不止PostgreSQL。感谢灿灿能把这样一本好书带给数据库从业者们,为灿灿点赞!
—— 梁敬彬,《收获, 不止 Oracle》、《收获,不止 SQL 优化》作者
《PostgreSQL 14 Internals》是一本市面上少有的深入探究 PostgreSQL 内核机制的优质书籍。本书通过多方面由浅入深的讲解,向读者阐述了诸多 PostgreSQL 内部原理及实践应用。相比于其他中国市面上的 PostgreSQL 内核相关书籍,该书更加具有实践指导意义,对于 PostgreSQL 的开发、运维人员来说都是一本不可多得的佳作!相信在 PostgreSQL 领域有着深厚造诣的灿灿,耗时 2 年呕心沥血翻译的这本杰作,必将为进一步推动 PostgreSQL 在中国的发展起到十分积极的作用。我作为一名从业十余年的 DBA,强烈推荐所有从事 PostgreSQL 相关工作的读者细心品读。
—— 李海龙, PostgreSQL 中文社区常委, 2024 年 12 月于北京
PostgreSQL 爱好者的绝佳福音!对于所有对 PostgreSQL 怀有好奇心的探索者,无论是应用开发者、数据库管理员,还是内核开发者,这本《PostgreSQL 14 Internals》无疑是不可多得的佳作。本书系统且深入地剖析了 PostgreSQL 的内部机理,涵盖了从隔离级别、多版本并发控制到 Buffer 管理、日志处理和锁机制等核心知识;从查询优化树到查询执行,乃至各种索引技术,无一不囊括其中。这些内容不仅可以极大满足读者对 PostgreSQL 内部机制的探索兴趣,还通过丰富的实操案例,教会读者如何使用标准 SQL 和 PostgreSQL 提供的模块,直观地观察和理解数据库的运行状态以及内部机理。这种透视机制如同"X 光"或"彩超"一般,将 PostgreSQL 的"内部秘密"呈现在眼前,可以极大满足技术爱好者的好奇心和求知欲。
更重要的是,这种知识带来的不仅仅是技术上的满足。好奇心驱动下的深入学习,会让你从一个"问题制造者"变成真正的"问题解决者",成为团队中备受信赖的"问答专家",甚至成为客户心目中最可靠的顾问。这对个人的职业发展与成就感的提升,无疑是一大助力。
在当前的国内外技术趋势下,PostgreSQL 凭借其开源特性、四十多年的技术积累,以及强大的社区支持,正在被越来越多的行业专家和开发者所喜爱。尤其在中国,PostgreSQL 的应用正在迅速增长。更值得一提的是,本书的作者和译者均为业界深耕多年的资深专家,他们在实际工作中运维和管理过上千台 PostgreSQL 服务器实例,支撑关键的 OLTP 业务;还运维过大量 YMatrix/Greenplum 集群,处理 PB 级数据规模,助力客户的关键 OLAP 业务。这些丰富的实践经验为本书增添了宝贵的实战指导价值。
—— 姚延栋, 北京四维纵横数据技术有限公司创始人 & CEO, PostgreSQL 中文社区常委