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

PostgreSQL 人物采访 - Oleksii Kliukin

digoal 2020-09-11
235

作者

digoal

日期

2020-09-11

标签

PostgreSQL , 人物采访


背景

谷歌翻译的, 便于阅读, 英文阅读没有障碍的同学建议阅读原文.

原文
https://postgresql.life/post/oleksii_kliukin/

PostgreSQL是世界上最先进的开源关系数据库。采访系列“ PostgreSQL一周之人”介绍了使该项目成为今天的人们。在这里阅读所有采访。

请告诉我们您自己,您的爱好以及您的来历。

嗨,我叫Oleksii(人们也叫我Alex)。我在Adjust.com担任数据库工程师,改善了他们的PostgreSQL基础结构。在此之前,我曾在Patlandi和Zalando 的Postgres Operator工作。我来自乌克兰的辛菲罗波尔。我大约7年前移居德国。我与我的妻子和两个儿子(分别为3岁和7个月大)一起住在柏林。有时间时,我喜欢在户外度过,远足,骑自行车或跑步。

pic

您何时开始使用PostgreSQL,为什么?

在我的第一个编程工作中,我已经开始通过调试后端过程中的段错误来使用PostgreSQL。那是在2003年左右,那时我正在研究能够进行二进制复制的PostgreSQL的自定义封闭源分支。我没有从头开始编写它,但是继承了一个已经存在的代码库。那时,社区中没有人定期检查代码,并且通过消除各种崩溃的努力,以艰辛的方式研究Postgres内部原理的机会充斥着。我认为这是PostgreSQL 7.3。当时几乎没有与内部相关的文档或演示文稿,我通过阅读源代码并寻求IRC的帮助来解决问题。

你上过大学吗?如果是,那与计算机有关吗?您的学习对您目前的工作有帮助吗?

我拥有辛菲罗波尔Taurida国立大学的应用数学硕士学位。虽然理论多于实践,但正规教育使我对关系模型和评估算法的工具有了扎实的理解,并提供了许多严格的数学证明示例。这有助于在代码审查期间查找极端情况,弄清某些操作为何缓慢或阅读数据库研究论文的原因。

您还在使用其他哪些数据库?哪一个是你的最爱?

PostgreSQL是我最喜欢的数据库。过去,我曾接触过其他数据库系统,例如Oracle,MySQL,Redis或Cassandra。我目前的工作主要是使用PostgreSQL。

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

在Adjust,我正在帮助维护和改进我们的开源扩展,即istore。我们基于Postgres的数据管道也非常擅长查找一些罕见的Postgres竞赛条件,我将它们报告给社区邮件列表并不时进行修复。我也在开发一个命令行UI工具,用更现代的东西替换pg_view。尽管顶级的Postgres解决方案并不短缺,但我对它们中的任何一个都不完全满意。

您如何为PostgreSQL做贡献?

我通过发送一些错误报告和补丁来解决它,从而为PostgreSQL做出了贡献。我希望将来能在补丁审查/功能上做更多的工作。

对PostgreSQL的任何贡献都与编写代码无关?

我是“ 柏林PostgreSQL聚会 ”的组织者之一。自2015年以来,我们已经有许多演讲者和演讲。过去,我也自愿参加了几次会议,可以肯定地建议您提供帮助,以便更多地参与PostgreSQL社区。

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

我最喜欢的是contrib扩展,称为pageinspect。它为您提供了一个低水平窥视数据库页面的惊人可能性。它相对简单,但有助于理解PostgreSQL如何存储数据和诊断数据损坏问题。

您能想到的最烦人的PostgreSQL是什么?还有修复它的机会吗?

许多被认为是Postgres限制的问题将通过即将到来的替代堆存储实现来解决,例如zheap或pg_cryogen。到目前为止,对我而言最令人讨厌的是,逻辑解码/复制在故障转移后停止工作,这限制了它的实用性,特别是在基于云的环境中。

在最新的PostgreSQL版本中,您最喜欢的功能是什么?

可插拔的存储机制。它提供了一种机制来重新定义PostgreSQL存储表数据的方式,并为解决更多用例打下了基础,例如仅追加,压缩或带有将来扩展的面向列的存储。

除此之外,您想在PostgreSQL中看到什么功能/机制?又为什么呢

我很期待postgres_fdw的改进,特别是支持在一个事务中对多个外部表进行并行追加和原子写入(现在,如果存在网络或其他问题,数据可能最终会保留在某些外部表上)服务器,而不是其他服务器)。

您能描述一下PostgreSQL开发工具箱吗?

我正在尝试使用VS.code在Postgres核心和扩展上工作,并取得了一些不错的结果:可以将其用于许多活动(浏览代码,构建,调试),几乎就像一个完整的IDE一样,而无需掌握负担另一种语言只是用来以您喜欢的方式配置您的编辑器。对于快速的配置更改或文本编辑,我使用vim。我的首选系统是MacOS,我使用clang编译Postgres并使用lldb对其进行调试。我将iterm用作终端机,而不是内置的terminal.app,因为它支持分屏会话并且可以与tmux很好地配合使用。最后但并非最不重要的一点是,我使用mailwrap在内置Mail.app中重新格式化电子邮件以适合80个字符的行,以提高可读性。我也无法将内置psql称为最佳的PostgreSQL客户端。

PostgreSQL开发人员/用户必须具备哪些技能?

很好奇,然后尝试一下!PostgreSQL有出色的参考文档,源代码有很多注释,在许多情况下,您可以观察PostgreSQL的工作,并使用这些参考来解释原因。另外,不要将您的SQL局限于基础知识,学习更多高级功能(例如窗口函数,CTE,LATERAL联接),并且将来其他功能将通过更智能的查询和更少的应用程序代码获得回报。

您是否使用任何git最佳实践,这使使用PostgreSQL更容易?

我通常从自己的github分支上克隆PostgreSQL,而不是使用git.postgresql.org上的仓库。我使用GitLens VS.code插件来显示指向光标下方的行的最后更改的链接。我将自己的分支推回去,以免丢失。

您访问哪些PostgreSQL会议?你提交演讲吗?

我通常会尝试参加FOSDEM,PGConf.DE(德语国家的PostgreSQL会议),PGCon和PGConf.EU,并定期向他们提交演讲。我不时参加/讲话在俄罗斯和美国的其他会议。我期待今年下半年第一个乌克兰PGDay PGDay.UA。

您认为Postgres的入门门槛很高吗?

不,进入障碍并不比其他数据库系统高。我发现PostgreSQL行为是可预测且一致的,并且该文档为所有主要主题提供了非常好的参考。那里有大量关于如何入门的教程,以及许多会议视频,重点介绍了不同组织如何在生产中使用PostgreSQL。您几乎可以参加世界各地的许多会议,以及许多本地聚会。最后但并非最不重要的是,使PostgreSQL成为成功的开源项目的是社区(有说法是有些项目有社区,而PostgreSQL是社区)。分享您所学知识的精神,互相帮助的愿望以及对新移民的普遍欢迎态度使该项目在开源世界中独树一帜。

对于想要开始PostgreSQL开发的人(例如为该项目做贡献的人),您有什么建议?他们应该从哪里开始?

有很多方法可以对PostgreSQL做出贡献,而不仅仅是源代码。对于那些对PostgreSQL开发感兴趣的人,我建议从https://wiki.postgresql.org/wiki/Developer_FAQ的Wiki开始。与该文档中的建议相反,请勿立即跳过TODO项目。订阅psql-hacker,pgsql-committers和pgsql-bugs。转到commitfest应用程序,社区在其中跟踪正在进行的补丁的状态,在开放的commitfest中找到您感兴趣的项目,阅读邮件列表讨论,在本地应用补丁,观察其工作方式以及根据文档应如何工作或作者的描述,请在源代码中阅读,然后将您的评论发布到主题中。查看来自pgsql-committers的最后一天的提交,并尝试弄清它们正在解决哪些问题(如果您感兴趣的话,可以遵循提交中的讨论链接)。您还可以在pgsql-bugs上查找新提交的内容,并帮助重现和解决此处发布的问题。

您认为PostgreSQL会在未来很多年出现吗?

鉴于多元化和成熟的社区,许多公司提供了出色的产品和不断增长的支持(其中任何一家公司都没有对项目的完全控制权),我认为PostgreSQL仍然存在。

您是将Postgres推荐用于商业还是副项目?

对彼此而言。您也可以将PostgreSQL作为您的辅助项目!

您正在阅读-hackers邮件列表吗?还有其他清单吗?

我读线程-hackers,看在最新提交-committers,寻找新的主题-性能和-bugs。

您还在其他哪些地方闲逛?

主要是邮件列表。我在Slack或IRC上都不是固定的,但是我会不时访问这两者。

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

PostgreSQL生态系统之外没有很多。找到错误后,我会尝试将它们提交给开源项目。我正在观察Linux内核,Kubernetes和Go生态系统的开发,我很高兴看到这样有影响力的项目是开源的。

您还想添加其他内容吗?

保持健康。使用Postgres!

PostgreSQL 许愿链接

您的愿望将传达给PG kernel hacker、数据库厂商等, 帮助提高数据库产品质量和功能, 说不定下一个PG版本就有您提出的功能点. 针对非常好的提议,奖励限量版PG文化衫、纪念品、贴纸、PG热门书籍等,奖品丰富,快来许愿。开不开森.

9.9元购买3个月阿里云RDS PostgreSQL实例

PostgreSQL 解决方案集合

德哥 / digoal's github - 公益是一辈子的事.

digoal's wechat

文章转载自digoal,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论