作者
digoal
日期
2020-09-11
标签
PostgreSQL , 人物采访
背景
谷歌翻译的, 便于阅读, 英文阅读没有障碍的同学建议阅读原文.
原文
https://postgresql.life/post/kohei_kaigai/
PostgreSQL是世界上最先进的开源关系数据库。采访系列“ PostgreSQL一周之人”介绍了使该项目成为今天的人们。在这里阅读所有采访。
请告诉我们您自己,您的爱好以及您的来历。
我在日本滋贺县长大。它被称为我们国家最大的湖泊的湖边地区。我在筑波大学学习了计算机科学和企业管理。在那之后,我以Linux内核的开发者的身份开始了在NEC的第一职业。2006年,我开始内部开发PostgreSQL,并加入社区以进行一系列安全性增强。最近,我对GPU的计算能力与数据库工作负载的集成感兴趣。2017年,我建立了HeteroDB,以实现该技术的产品化。我也是两个孩子的父亲,也是一名冰壶运动员。
我们应该注意您的任何社交媒体渠道吗?
凯盖自己的备忘录(KaiGaiの俺メモ)
幻灯片分享
您何时开始使用PostgreSQL,为什么?
作为用户,我曾将PostgreSQL 7.x用于Web系统的PHP脚本的后端,可能是2000。作为开发人员,我开始在PostgreSQL 8.2上进行调查和增强,以在用户空间中支持SELinux。
您还记得您开始使用哪个版本的PostgreSQL吗?
8.2
你上过大学吗?如果是,那与计算机有关吗?您的学习对您目前的工作有帮助吗?
是的,我在本科课程中学习了计算机工程。操作系统(包括并行,分布式计算)和计算机图形学课程是我最喜欢的课程,但是,我在数据库理论方面的得分不是很好。:-)
您还在使用其他哪些数据库?
编号:-)
您目前正在从事哪些与PostgreSQL相关的项目?
PG-斯特罗姆。最近,我正在从事事务性GPU内存存储和PostGIS函数的GPU版本。对于核心14devel,正在进行非对称分区连接,在外表上截断和16位浮点支持。
您如何为PostgreSQL做贡献?
在过去的十年中,作为社区活动,我编写并提交了各种补丁。他们中的一些人对pgsql-hacker进行了长期讨论,以最终确定设计和实现。我认为,开源开发人员最重要的思维定式是“永不放弃”。
对PostgreSQL的任何贡献都与编写代码无关?
例如,我曾向我们的客户建议,他们想要将具有TB级数据库的旧PostgreSQL 9.1迁移到RedShift或ExaData,那么更合理的模式定义和一些查询调整会更好。最后,他们仍在使用PostgreSQL,但已升级到v10。不仅代码开发很重要或在会议上做演讲,我认为人们的日常工作也对PostgreSQL有所贡献。
您最喜欢的PostgreSQL扩展是什么?
Citusdb,即使使用GPU和NVME,也能处理比单节点容量更大的数据。Auto_explain和pg_buffercache为我们提供了有关性能问题的清晰提示。
在最新的PostgreSQL版本中,您最喜欢的功能是什么?
可插拔存储API。如今,PostgreSQL具有三种不同的方式来扩展SQL执行(除了可插入存储之外,还包括FDW和CustomScan)。它们每个都有不同的特征,因此开发人员可以根据自己的目的选择最佳方法。
除此之外,您想在PostgreSQL中看到什么功能/机制?又为什么呢
非对称分区明智联接-当我们使用相对较小的主表处理大规模数据(如IoT / M2M日志数据)时,我们通常只希望对事实表进行分区。在这种情况下,当前版本的PostgreSQL在合并之前不支持分区页和非分区表之间的连接。我在13个开发周期中为此功能提交了一个补丁,但未能引起人们的足够重视。我喜欢在v14中重试。
考虑波动性的成本估算-优化器估算候选路径的成本时,通常取决于估算的行数。如果使用具有最新统计信息的简单表扫描,它几乎是准确的。但是,它的准确性随着复杂的子查询和多级JOIN变得越来越差。这种与实际行数的差距可能会产生灾难性的查询执行计划。例如,即使优化程序期望嵌套循环有2 x 1000行,子关系生成100 x 5000行也并不奇怪。在这种情况下,执行成本是估算值的250倍。我喜欢有一个用于成本优化的波动性因素的概念。即使估算的成本很小,当估算的行数不准确时,也可能会有风险。在这种情况下,“次优”可能是“实际上最好”的路径。
您能描述一下PostgreSQL开发工具箱吗?
emacs,cscope等。没什么特别的…
PostgreSQL开发人员/用户必须具备哪些技能?
C编程语言和有关操作系统的广泛知识,尤其是内存管理和存储,是基础。但是,最重要的技能是介绍您的项目目标并使其他人参与。
您访问哪些PostgreSQL会议?你提交演讲吗?
我将提交PGconf.EU 2020的两个演讲。可能是日本的PostgreSQL会议和PGconf.ASIA。不幸的是,三月份的PGconf.NYC被取消了。我想再次有机会在美国。
对于想要开始PostgreSQL开发的人(例如为该项目做贡献的人),您有什么建议?他们应该从哪里开始?
开发可行工具的最简单方法是用C语言实现自己的SQL函数。PostgreSQL提供了各种钩子和基础结构(如FDW API)来扩展功能,而无需修改核心代码。用C语言开发SQL函数将使新手学习如何使用构建工具链,内部模块如何相互协作,如何管理资源等等……“可行”的东西是迈向核心开发的重要第一步。
您认为PostgreSQL会在未来很多年出现吗?
绝对是 PostgreSQL社区可以根据技术的进步灵活地采用新的概念和功能。也许十年后我们称之为PostgreSQL的东西与我们现在正在寻找的东西有很大不同。
您正在阅读-hackers邮件列表吗?还有其他清单吗?
是的,但不是全部。仅相关主题。
您参与或感兴趣的其他哪些开源项目?
- Apache Arrow-一种用于大数据解决方案的通用列式数据格式。PG-Strom还支持直接读取Apache Arrow文件以快速导入数据。
- RAPIDS cuDF -GPU设备内存上的数据帧管理。我一直对连接数据库世界和机器学习世界的软件感兴趣。
PostgreSQL 许愿链接
您的愿望将传达给PG kernel hacker、数据库厂商等, 帮助提高数据库产品质量和功能, 说不定下一个PG版本就有您提出的功能点. 针对非常好的提议,奖励限量版PG文化衫、纪念品、贴纸、PG热门书籍等,奖品丰富,快来许愿。开不开森.