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

PostgreSQL 人物采访 - 马可·斯洛特

digoal 2020-09-11
274

作者

digoal

日期

2020-09-11

标签

PostgreSQL , 人物采访


背景

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

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

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

请告诉我们您自己以及您来自哪里。

我最初来自荷兰一个叫做Den Helder的海边小城市,但如今我和妻子和猫一起住在一条小运河的哈勒姆。

2014年,我加入了一家名为Citus Data的小型土耳其创业公司,进入了PostgreSQL世界,这是一次激动人心的冒险。在使用Citus Data之前,我曾在分布式系统中获得博士学位,并在CloudFront和Route 53上为Amazon Web Services工作。我对数据库知之甚少,但是我喜欢在分布式系统上工作,而Citus Data则在扩展PostgreSQL,这似乎很有趣。 。事实证明,使用PostgreSQL代码真的很有趣,以至于我开始将大量时间用于PostgreSQL扩展以及与PostgreSQL相关的所有事情(会议,博客文章,编写新工具和扩展,帮助用户)。

我主要研究Citus扩展,它是一个开放源代码扩展,可以透明地在许多PostgreSQL服务器上分片表。它用于非常大的数据库(最大PB),尤其是软件即服务应用程序和实时分析仪表板。由于大多数PostgreSQL功能都像往常一样工作,但是操作是在集群中路由或并行化的,因此Citus将PostgreSQL变成了功能强大的分布式数据库。在2019年,微软收购了Citus Data,所以现在我在微软做所有相同的事情。

pic

你如何度过你的空闲时间?你的爱好是什么?

我喜欢骑自行车和步行,最好是在山上和在不同的国家,尽管最近骑自行车有点棘手。幸运的是,哈勒姆(Haarlem)是一座美丽的城市,距离沙丘和大海仅一步之遥。我也喜欢编写代码,主要是PostgreSQL扩展。

我们应该注意您的任何社交媒体渠道吗?

推特:@marcoslot
领英
Citus Data博客

您想向读者推荐什么书?

我认为,马丁·克莱普曼(Martin Klepmann)的“设计数据密集型应用程序”对于使用大量数据的任何人来说都是最重要的书。

有喜欢的电影或节目吗?

我认为我最近最喜欢的系列是《玛塞尔夫人》。

您理想的周末会怎么样?

可能是和我的妻子一起探索古老的小镇,远足很长的山峰,或者编写新的PostgreSQL扩展。

您的遗愿清单上还有什么?

堪察加半岛和亚轨道太空飞行。

您得到的最佳建议是什么?

创新的最强大力量是技术使业务增长,而业务使技术增长。

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

我在2010年为博士进行流量模拟时首次使用PostgreSQL,并且需要提取OpenStreetMap数据。带有PostGIS的PostgreSQL只是完成这项工作的合适工具,但是当我加入Citus Data时,我只是每天开始使用/破解它。

您还记得您开始使用哪个版本的PostgreSQL吗?

我认为是8.4。

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

是的,我研究了尽可能多的计算机科学。当Andy Tanenbaum还在那儿任教时,我在阿姆斯特丹的VU大学获得了计算机科学学士学位和并行与分布式计算机系统硕士学位。都柏林三一学院的合作自动驾驶汽车中 尽管我对数据库的了解并不多,但它为我目前的工作做好了很好的准备。VU拥有强大的(分布式)系统纪律,而博士学位可以为初创和领导角色提供令人惊讶的良好准备,这主要是因为它需要大量纪律和自我管理,并且需要从事协作式自动驾驶工作暂时,分布式数据库似乎相对容易。

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

我们在Microsoft使用了一些SQL Server,这是一个很好的数据库。当然,PostgreSQL是我的最爱。我在bsql中花费的时间与在bash中花费的时间一样多,因此PostgreSQL就像我的第二个操作系统。我确实发现自己在\ bash中输入\ d而不是ls非常糟糕。我也喜欢滥用Azure blob存储和S3等系统作为个人项目的数据库。

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

主要是PostgreSQL的Citus和Azure数据库,尤其是Hyperscale(Citus)。我的团队还维护其他许多PostgreSQL扩展,例如pg_auto_failover,pg_cron,postgresql-hll,postgresql-topn,cstore_fdw。

您如何为PostgreSQL做贡献?

我喜欢使用开源PostgreSQL扩展(除了这是我的工作),因为用户将能够立即部署我的代码,并且我可以控制范围以适应我的时间限制。不幸的是,我真的没有足够的时间(或耐心)直接处理PostgreSQL代码,但是我认为,使人们可以通过Citus扩展PostgreSQL,或者非常容易地通过pg_auto_failover配置设置高可用性,是我的团队。pg_cron是我主要由我自己编写的扩展,它解决了在PostgreSQL数据库中调度作业的常见问题,而无需单独的作业调度基础结构。

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

我认为值得一提的是,在被微软收购之前,我们向PostgreSQL基金会捐赠了1%的Citus Data股份。这可能最终成为有史以来对PostgreSQL的最大一笔捐款,我很高兴和自豪我们能够作为一家公司做到这一点。

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

在Citus之后,可能是pg_partman,因为它为您提供了简单而直接的时间分区。

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

逻辑复制插槽未复制到热备用数据库,从而导致故障转移中断逻辑复制。

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

自定义表访问方法将带来许多新的创新。我也喜欢所有索引改进。

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

我的愿望清单很长,但是我不想贪婪。如果我们能够解决逻辑复制插槽问题,我将非常高兴。

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

通常,只有典型的Linux命令行工具,例如tmux,vim,make,psql,git,grep,find,sed。

我倾向于对开发环境进行很少的自定义,这主要是因为我始终在分布式系统上工作,并花费大量时间连接到不同的机器,最终导致我不遵守任何非标准习惯。我还发现我的生产率与外部因素的关系要比我的开发环境更多。

我确实经常使用Ctrl + R来向后搜索命令历史记录,并且我喜欢它在bash和psql中始终有效。如果我在新机器上处理PostgreSQL代码,则可能会生成一些人工bash历史记录,例如:
find src/ -name "*.c" | sed -e 's/^/vim /' >> ~/.bash_history
这样,我可以使用Ctrl + R在bash中快速找到任何PostgreSQL源文件,而无需额外的工具。同样,我喜欢在psql的查询中添加–注释,以便稍后使用Ctrl + R通过在注释中键入一些字符来找到它们。

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

我认为对于PostgreSQL用户来说,尽可能地编写SQL非常重要。无论您的框架为避免样板提供了什么便利,SQL在实际解决您的问题时都提供了更多便利,并且可能会以更有效的方式来解决。将时间花在psql或其他交互式工具上以了解数据库中发生的事情也很重要。

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

我曾在PGConf.EU,PGConf.Russia,FOSDEM,PGCon,PostgresOpen,本地聚会,各种PGDays上发言。我一直在开会,但COVID-19无意间延长了会议的间隔时间,但我很想回去与社区会面。

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

大多数时候没有,但是性能调整可能非常困难,尤其是在规模上。选择正确的存储格式,分区,索引,触发器,转换等,以获得所有查询的良好性能,这可能涉及许多复杂的步骤。有时我会感到奇怪:我们是否可以构建一个优化器,而不是处理单个SQL查询,而是查看所有SQL查询及其性能预期,然后考虑配置数据库的所有选项并选择总体成本最低的选项? ?

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

我认为添加自定义类型(具有相关功能)比大多数人意识到的要容易和强大得多。我很高兴看到PostgreSQL支持流行的数据格式,例如YAML,RSS,EXIF,iCal,protobufs。一旦PostgreSQL支持一种数据格式,那么,鉴于其所有其他功能,它将自动成为世界上使用该数据格式构建应用程序最强大的工具。我们已经在PostGIS和JSONB中看到了这一点,但是在这方面还有很多创新的空间。

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

我主要一直潜伏在pgsql-hackers上。

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

我主要在Citus Data Slack上,有时在PostgreSQL Slack上。

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

我认为V8和SQLite是我最喜欢与PostgreSQL一起使用的开源项目。可以添加到软件中的经过久经考验的隔离编程运行时(例如V8)的概念为您提供了许多有趣的可能性,这些可能性远远超出了Chromium和Node.js。将小型SQL数据库嵌入到您的软件中同样强大。

您还想添加其他内容吗?

感谢您接受这些采访。由于我们无法访问会议,这是一种了解社区的好方法。

PostgreSQL 许愿链接

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

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

PostgreSQL 解决方案集合

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

digoal's wechat

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

评论