数据库 频道

Michael Stonebraker列出了PostgreSQL未来发展的优先级

关于流行开源数据库PostgreSQL的未来,其共同创造者Michael Stonebraker列出了其未来发展的优先级。

PostgreSQL的共同创造者、麻省理工学院计算机科学教授Michael Stonebraker列出了他对添加到这个流行的开源数据库中的功能的首要要求——时间旅行,他承认在1980年代实施的时间旅行功能很糟糕。

Stonebraker在Postgres Vision会议上说,时间旅行代码从根本上说是一个好主意,因为它允许用户从数据库的历史中查询数据,并在20世纪90年代推出了一个实现。

“1995年时,时间旅行的实现非常糟糕。它很慢,很慢,很慢,很慢。无论时间旅行是否是一个好主意,这个实现都太慢了,所以委员会的权力机构理所当然地删除了它,该委员会自1995年以来一直在处理Postgres,”他告诉与会者。

1986年,作为Ingres的继任者,Postgres被首次提出,彼时Stonebreaker还是UCL Berkeley的教授。PostgreSQL是在OSI批准的PostgreSQL许可证下发布的。他因引入类型系统而获得2014年图灵奖,该系统至今仍是PostgreSQL的基础。

尽管先前的尝试失败了,但他说时间旅行将是他希望在未来看到PostgreSQL的功能清单中的首位。“它允许你修复用户应用程序的错误。基本上,它允许你放入不同的条款,允许你查询日志,所以如果你想知道昨天发生了什么,只要把它设置为昨天,就可以实现,”他说。

Stonebraker补充说,时间旅行的好处是可以帮助管理员分析拒绝服务攻击。

他希望从PostgreSQL开发者那里看到的第二个推动力是将软件即服务作为一个优先事项。他说,虽然像Postgres服务商EDB这样的公司为PostgreSQL提供了一个平台即服务,减少了运行系统的麻烦,但目标应该是真正的SaaS。

“通过PaaS,你在AWS或谷歌云平台上有一个实例,你为这个实例付费,24/7,直到你删除它。但这不会使你的资源管理问题变得更加有效。”

“我是SaaS的忠实粉丝。你分享了一些别人担心的实例集,而且只有当你使用实际交易服务时才向你收费。如果有人担心你和其他人之间的资源分配和分时问题,这显然会更便宜。”他说。

然而,AWS Aurora等已经在这个领域领先于开源PostgreSQL,他补充说。

“我认为SaaS的问题在于,目前它是由一些‘云大象’提供的,比如Aurora。在我看来,PostgreSQL应该加入到这场游戏中,否则它可能会被云计算的山寨产品所取代。更广泛地说,云计算是未来,PostgreSQL和EDB应该非常、非常仔细地关注这个世界上所需要的设施,”这位数据库先驱解释道。

Stonebrakers愿望清单上的第三个是数据仓库。他说,自20世纪90年代以来,数据仓库一直是PostgreSQL错过的一个市场。问题是,PostreSQL是一个行存储数据库,而数据仓库最好由列存储数据库支持,他说。

“当你只搜索几个字段时,列存储比行存储更有效,”他补充说。

“PostgreSQL在数据仓库市场上没有竞争力。我已经和EDB和其他地方的人谈过这个问题,[他们]已经有意识地决定不玩了,因为这需要大量的工作。获得一个列存储实际上是一个新的存储引擎,一个新的执行器和新的优化器,这是很重要的。我理解[这个]决定。然而,这是个大市场。”

愿望清单中的最后一个是希望在PostgreSQL中更好地支持用户定义函数和存储过程。他指出,计算机科学家知道,在数据库系统中的存储过程或用户定义的函数中运行逻辑,比把数据带到应用程序中更好。但是 “真正的程序员不会使用这种东西”。

Stonebraker描述了一名斯坦福学生如何对开发人员进行调查,调研发现,开发人员的绊脚石包括没有调试器、没有版本控制、没有测试环境、缺乏标准以及缺乏语言支持。

“用户定义函数和存储过程在生产中是非常痛苦的,因为在开发和调试中,他们真的很痛苦。所以拜托,拜托,拜托PostgreSQL:你可以为用户定义函数和存储过程提供好的工具,你可以实现调试器,这并不难。”

由于Stonebreaker仍然被视为数据库软件的开拓者,也许社区会听取他的意见。不过,他们是否会采取行动是另一回事。然而,EDB本身是该项目的主要贡献者,有足够的资源来这样做。该公司刚刚宣布了由贝恩资本私募基金提供的新一轮资金,以促进其未来的发展。

原作者:Lindsay Clark

0