暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL ACE 深度访谈 | 第四期 唐成

导语

由PG分会发起的“PostgreSQL ACE深度访谈”栏目,旨在挖掘ACE们对数据库行业的深度洞察,分享他们对行业发展的思考和个人感悟,对广大PGer们具有实际借鉴意义。


以下正文,转载请注明出处,并获得作者允许。



正文





01

请简单介绍一下自己,您的爱好或您的家乡。

简单说我是一个老码农,刚工作时是C/C++程序员,后来转Oracle DBA,然后又转PostgreSQL DBA。目前所在的工作岗位,高大上的称呼叫数据库架构师,其实本质还是一个码农,平时也比较爱好编程,精通Python和golang语言,对一些新的语言也比较感兴趣,如Ziglang、Rust、mojo等等,喜欢写一些与数据库相关的工具。


我的祖籍是四川,但在新疆长大和上学,算是半个四川人,一个新疆人。新疆是一个美丽的地点,我现在定居在杭州,杭州也是一个美丽的地方,欢迎大家到杭州玩。


02

请介绍下您的自媒体平台以及创作背景

最近新建了一个微信公众号:“PostgreSQL技术之家”,我后续会把技术文章发到这个公众号上。我的微信号为“osdba0”,如果需要和我交流PostgreSQL技术的朋友,可以加我这个微信号。


03

您是什么时候开始接触PostgreSQL,为什么会选择使用它?


开始使用PostgreSQL数据库时间有一些记不清楚了,应该是在2008年之前。选择使用它主要是因为PostgreSQL的功能强大、运行稳定bug少。


04

您还记得您最开始使用的PostgreSQL版本吗?有没有令您印象深刻的地方?


我最早使用的版本是PostgreSQL 8.2。我最早接触的开源数据库是MySQL,大约在2002年。刚开始接触MySQL时,就被MySQL的小巧快速所吸引。当接触到PostgreSQL时,哇,还有比MySQL更小巧功能更强大的数据库。我以前是Oracle DBA,Oracle有hash join、sort merge join等功能,而这是MySQL的一个痛点。这时突然发现一个可以和商业数据库相媲美的数据库PostgreSQL,太兴奋了。


05

您目前正在从事哪些与 PostgreSQL 相关的工作或项目?


前些年我和朋友一起创建了中启乘数科技公司,主要从事PostgreSQL数据库的维护工作和一些PostgreSQL工具的开发工作。


06

您如何为 PostgreSQL 做出贡献(主题分享、发表文章、文档贡献、代码贡献等)?


写了一本书《PostgreSQL修炼之道:从小工到专家》,PostgreSQL中文书籍中最早的一本全面介绍PostgreSQL数据库的书籍。


每年都参加国内的PostgreSQL的技术大会并做一些分享。


07

您最喜欢PostgreSQL的功能或扩展是什么?


PostgreSQL数据库有非常多的东西都让我喜欢,如流复制物理备库、支持复杂SQL、丰富的索引类型等等功能。当然最喜欢的功能是PostgreSQL提供的插件框架,可以根据需要写自己的插件,也可以在网上找到丰富的插件。


08

PostgreSQL 最新版本中您最喜欢哪个功能?


当前最新发布的版本是PostgreSQL 16,最喜欢的功能是允许从备库进行逻辑复制,这样可以大大降低逻辑复制对主库的压力。


09

除此之外,你希望在 PostgreSQL 中看到什么功能/机制?为什么?


希望看到PostgreSQL 能实现Direct IO,从而避免double buffering的问题。因为其它的数据库如Oracle、MySQL都有此功能。没有这个功能时,存在double buffering的问题,对于大内存的机器(如1TB)上的PostgreSQL,导致内存的利用率不太好。


10

对于那些想要开始从事PostgreSQL 的人,您有什么建议?


仔细的看一遍PostgreSQL的官方手册。然后可以考虑参加一些PostgreSQL的专业培训。


11

在工作中是否基于PostgreSQL 开发出了相关工具或产品,可以介绍一下它的特性吗?


我开发了PostgreSQL 数据库领域的开源连接池软件ZQPool(https://gitee.com/csudata/zqpool)。最早的时候对PostgreSQL数据库的前后端协议比较感兴趣,为了研究这个协议,当时又比较喜欢golang语言,所以计划使用golang语言写一个连接池软件。在写这个连接软件的过程中,深刻的立即了PostgreSQL数据库的前后端协议。


是一个支持prepare语句的连接池软件,通过ZQPool大大减少到数据库上的连接数,同时可以在多个备库上分配或切换读流量,就象一些MySQL生态中的中间件一样。


另外还开发了一个PostgreSQL数据库的开源管理工具CLup(https://gitee.com/csudata/clup),可以实现PostgreSQL数据库的高可用和集中管理的功能。


12

对于即将发布的PostgreSQL 新版本,您期待它有什么样的的新特性吗?


是PostgreSQL 17的增量备份功能,对于一些超过10TB特大库的备份非常实用。


13

在工作中是否遇到了有关PostgreSQL的难题,都是如何解决的?


在工作中会遇到一些PostgreSQL一些难题,绝大多数问题都可以通过搜网上的文章或把问题发到一些技术群中来解决。少量解决不了的问题,可以通过查看源代码来解决。

14

您参与或对哪些其他开源项目感兴趣?


目前对ivorySQL开源项目(https://www.ivorysql.org)和PolarDB开源项目(https://github.com/ApsaraDB/PolarDB-for-PostgreSQL)比较感兴趣。


ivorySQL是一个很有意思的PostgreSQL扩展版本,提供了Oracle兼容包、Oracle兼容PL/iSQL过程语言、GUC在Oracle和PostgreSQL模式之间切换的功能,为想从Oracle迁移到PostgreSQL数据库的用户带来了福音。


而PolarDB提供了让PostgreSQL的主备库跑在相同的一套共享存储的数据之上的功能。

15

你在阅读 -hackers 邮件列表吗?还有其他列表吗?


经常会看。还会看pgsql-bugs邮件列表。


16

您认为身为PG ACE,应该具备那些技能或品质?


乐于分享和交流。在分享和交流中和大家一起学习进步。



最后修改时间:2024-07-23 11:49:46
文章转载自开源软件联盟PostgreSQL分会,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论