[托管 PostgreSQL 提供商的比较:AWS RDS vs Google Cloud SQL vs Azure PostgreSQL](https://res.cloudinary.com/practicaldev/image/fetch/s--eCHChGK2--/c_limit%2Cf_auto%2Cfl_progressive %2Cq_auto%2Cw_880/https://hasura.io/blog/content/images/2021/07/comparison.png)

托管 PostgreSQL 提供程序的比较

嘿!我叫古纳尔。我是来自伦敦的软件开发顾问。多年来,我一直是 Hasura 的快乐用户,我很高兴与 Hasura 合作撰写这篇博文。我们将讨论托管的Postgres云提供商。

Hasura 为我们提供了关于新的和现有的 Postgres 数据库的即时实时 GraphQL 和 REST API。在使用 Hasura 构建新应用程序时,我经常不得不选择要选择的托管云提供商。这是一篇旨在简化决策过程的帖子,我根据我为客户使用的向量比较了一些流行的提供商。

也就是说,为我们执行所有维护任务的服务提供商。这些服务使我们能够在云上拥有一个可靠的数据库,而不必担心应用更新、管理服务器以及保持庞大的基础架构团队来维护我们的数据库层。

我们将关注六家云提供商:

  • AWS

  • GCloud

  • 天蓝色

  • 数字海洋

  • 至 6

  • 大象SQL

目录

  • 整体比较

  • 高可用性

  • 自动缩放

  • Postgres 版本

  • Postgres 扩展

  • 自动备份

  • 监控和指标

  • 安全

  • 成本

  • 结论:我应该选择哪个提供商?

以为我会立即从比较表开始。并让您在深入了解 deets 之前获得总体概览。正如人们所预料的那样,AWS 树立了标杆,GCloud 和 Azure 紧随其后。然后我们有稍微简单的解决方案,比如 DigitalOcean、Heroku 和 ElephantSQL——也不落后太多!

数据库是复杂的、多方面的生物,因此我们将研究多个特征。它们是自动扩展、监控和指标、成本、版本、扩展、备份、高可用性和安全性。如果您真的想对这些服务有一个很好的了解,我建议您深入阅读每个部分。

我无法评论价格,因为不同的供应商提供不同的好处。但是,成本部分将让我们了解单个服务器数据库可能会让我们对这些提供商中的每一个感到失望。

通常来说,一般来说:

  • 如果您是独立黑客或小型初创公司,DigitalOcean、Heroku 或 ElephantSQL 等更简单的解决方案可能是一个不错的选择。这些提供商具有更简单的成本结构,并且他们的产品采用预定义的套餐。

  • 如果您是一家企业公司,您将需要 AWS、GCloud 和 Azure 等大公司的稳定性和保证。

提醒您 Hasura 和 Hasura Cloud 与所有提供商合作可能会很好。

AWS

GCloud

天蓝色

数字海洋

经六

大象SQL

自动缩放

监控和指标

⏺️

费用

🤷

🤷

🤷

🤷

🤷

🤷

版本

⏺️

⏺️

扩展

备份

高可用性

⏺️

安全

⏺️

高可用性

高可用性涉及数据冗余、可用性和可靠性。所有提供商都通过只读的追随者和自动故障转移提供此功能。

正如您在下面看到的,大多数提供程序在后台进行转换,因此您不必告诉应用程序层指向新的 Postgres URL。除了 Heroku。 Heroku 将自动更新 Dynos 的环境变量 DATABASE_URL(这会触发重启),但如果您的服务托管在非 Heroku 服务器上,这显然不起作用。

另外,请快速向 Azure 团队大喊。他们在简化和隐藏复杂性方面进一步提高了高可用性。例如,即使是单服务器计划,实际上也是“在一个区域内存储三份数据,以确保数据冗余、可用性和可靠性”。因此,您以单台服务器的价格获得高可用性,这非常酷。

静态 IP/端点

自动故障转移

AWS

[✅](https://aws.amazon.com/rds/ha/)

[✅](https://aws.amazon.com/rds/ha/)

GCloud

[✅](https://cloud.google.com/sql/docs/postgres/high-availability)

[✅](https://cloud.google.com/sql/docs/postgres/high-availability)

天蓝色

[✅](https://docs.microsoft.com/en-us/azure/postgresql/concepts-high-availability)

[✅](https://docs.microsoft.com/en-us/azure/postgresql/concepts-high-availability)

数字海洋

[✅](https://docs.digitalocean.com/products/databases/postgresql/)

[✅](https://docs.digitalocean.com/products/databases/postgresql/)

经六

[❌](https://devcenter.heroku.com/articles/heroku-postgres-ha)

[✅](https://devcenter.heroku.com/articles/heroku-postgres-ha)

大象SQL

[✅](https://www.elephantsql.com/blog/high-availability-HA-PostgreSQL-plans-at-ElephantSQL.html)

[✅](https://www.elephantsql.com/blog/high-availability-HA-PostgreSQL-plans-at-ElephantSQL.html)

自动缩放

自动缩放是托管数据库的一项相对较新的功能。目前 AWS 和 Azure 支持存储和服务器的自动扩展。有趣的是,Google Cloud 还不支持 Postgres 的自动缩放。

  • 自动扩展存储意味着提供者将根据数据库的需要自动配置更多磁盘空间。

  • 自动扩展服务器表示提供商将自动垂直或水平扩展数据库。最常见的操作是启动更多只读副本,但也可以增强主实例。

自动缩放是可选的,但请确保已正确配置。自动扩展容量也自动扩展成本;)

前往https://hasura.io/blog/comparison-of-managed-postgresql-aws-rds-google-cloud-sql-azure-postgresql/了解文章的其余部分!

Logo

PostgreSQL社区为您提供最前沿的新闻资讯和知识内容

更多推荐