
PostgreSQL 多年来一直很热门,但对于希望在众多竞争供应商之间进行选择的企业来说,这种热度也可能是一个挑战。由于企业希望摆脱昂贵的遗留关系数据库管理系统 (RDBMS),但仍希望坚持使用 RDBMS,开源 PostgreSQL 是一种有吸引力且成本较低的替代方案。但是哪个PostgreSQL?AWS 曾经是两个托管 PostgreSQL 服务(Aurora 和 RDS)的明显默认选择,但现在有 Microsoft、Google、Aiven、TimeScale、Crunchy Data、EDB、Neon 等。
Neon Nikita Shamgunov 创始人兼首席执行官的接受采访时,他强调,在这群 PostgreSQL 宝座的争夺者中,未来的关键区别在于无服务器。“我们是无服务器的,除了具有无服务器选项的 Aurora 之外,所有其他公司都不是,”他宣称。如果他关于无服务器对于采用 PostgreSQL 的重要性的看法是正确的,那么商业 PostgreSQL 的未来可能会归结为 Neon 和 AWS 之间的无服务器之战。
抛弃那些服务器
在某些方面,无服务器是云的承诺的实现。例如,几乎从它开始的那一天起,AWS 就将云定位为一种卸载管理服务器的“无差异繁重工作”的方式,但即使使用 Amazon EC2 或 Amazon RDS for PostgreSQL 等服务,开发人员仍然必须考虑服务器,即使涉及的工作要少得多。
在真正的无服务器世界中,开发人员根本不必考虑底层基础设施(服务器)。他们只专注于构建自己的应用程序,而云提供商负责配置服务器。在数据库世界中,真正的无服务器产品将分离存储和计算,并通过跨节点集群重新分配数据来替代数据库的存储层。
Kestra 的开发人员关系主管 Anna Geller 解释说,除了无服务器的其他好处之外 ,无服务器还鼓励有用的工程实践。例如,如果我们同意“以只负责一件事的方式构建单个软件组件是有益的,”她指出,那么无服务器就会有所帮助,因为它“鼓励易于更改和无状态的代码。” 无服务器几乎迫使开发人员构建可重现的代码。她说,“无服务器不仅迫使你让你的组件变小,而且还要求你定义执行你的功能或容器所需的所有资源。”
结果:正如许多公司所发现的,更好的工程实践和更快的开发时间。简而言之,无服务器有很多值得喜爱的地方。
Shamgunov 看到了运行 PostgreSQL 无服务器的两个主要好处。首先是开发人员不再需要担心尺寸问题。开发人员所需要的只是一个到数据库的连接字符串,而不用担心大小/规模。Neon 完全解决了这个问题。第二个好处是基于消费的定价,能够缩小到零(并支付零)。Ampt 首席执行官 Jeremy Daly 表示,AWS 不提供这种扩展到零的能力。即使您的应用处于闲置状态,您也需要付费。
但不是霓虹灯。正如 Shamgunov 在我们的采访中强调的那样,“在 SQL 世界中,使其真正成为无服务器非常非常困难。他说,就公司如何尝试实现无服务器扩展到零的承诺而言,存在“灰色阴影”,但目前只有 Neon 可以做到。
人们关心吗?答案是肯定的,他坚持。“到目前为止,我们了解到人们真正关心可管理性,而这正是无服务器明显赢家的地方。[它使]消费变得如此容易。您需要管理的只是一个连接流。” 随着公司用“越来越大的车队”构建越来越大的系统,这一点变得越来越重要。在这里,“不用担心 [your] 计算 [is] 在某个时间点有多大会容易得多。” 在其他系统中,除非您专注于增加或减少资源,并且不断需要调整您的工作负载,否则最终会导致成本失控。但 Shamgunov 认为,不像 Neon 这样的完全无服务器产品。“只是一个连接流,然后就可以了。人们喜欢这样。”
充分利用无服务器
在无服务器领域,并非一切都是美好的。以冷启动为例。第一次调用函数时,无服务器系统必须初始化一个新容器来运行您的代码。这需要时间,称为“冷启动”。Neon 一直在“投入大量工程预算来解决冷启动问题,”Shamgunov 说。在此之前,该公司还进行了许多其他性能改进,例如加速 PostgreSQL 连接。
Neon 还独特地提供了分支。正如 Shamgunov 解释的那样,Neon 支持写时复制分支,“允许人们为每个预览或每个 GitHub 提交运行一个专用数据库。这意味着开发人员可以对数据库进行分支,创建数据的完整副本,并为开发人员提供一个单独的无服务器端点。你可以运行你的 CI/CD 管道,你可以测试它,你可以做容量或各种各样的事情,然后把它带回你的主分支。如果您不使用该分行,您将花费 0 美元。因为它是无服务器的。真正的无服务器。
用 Shamgunov 的话说,所有这些都有助于 Neon 实现其“像 Stripe 一样易于使用”的承诺。为了赢得 PostgreSQL 之战,他继续说道,“你需要像 Stripe 一样对开发人员友好。” 简而言之,您需要无服务器。
文章来源:https://www.infoworld.com/article/3698688/serverless-is-the-future-of-postgresql.html




