运行数据库服务器是一项昂贵的工作。您需要购买昂贵的硬件,特别是如果您需要您的服务器完全冗余并且能够抵御错误。您需要一个监控系统来跟踪其运行状况,还需要专门的人员来保持数据库的平稳运行。
即使您在云硬件上运行数据库,维护服务器也需要付出很多努力。如果您正在为时间序列或列存储等应用程序运行专用数据库,则尤其如此。
托管云数据库服务解决了这些问题中的大部分。您不需要硬件,具有弹性,云为您处理大部分管理工作。
AWS、Microsoft、 Google 和 Oracle 都是托管数据库服务。让我们看看他们是如何比较的。
AWS
AWS 提供最广泛的产品,包括许多数据库产品。它们很好地覆盖了关系和 NoSQL 市场,拥有各种专有和开源兼容的数据库。
亚马逊 RDS
RDS是一个托管数据库引擎,支持 MySQL、PostgreSQL、MariaDB、Microsoft SQL Server 和 Oracle 数据库引擎。您可以使用五个实时副本配置高达 6TB 的存储,并跨多个可用区配置故障转移。
极光
Amazon 的 Aurora是一个完全托管的关系数据库引擎。它与 MySQL 和 PostgreSQL 完全兼容,并通过只读副本、自动故障转移和可扩展性提供卓越的性能。还有一个选项可以在无服务器配置中运行 Aurora,该配置可按需扩展和缩减。
Aurora 提供比 RDS 更好的性能,但价格更高。
Redshift
Redshift是 AWS 提供的另一个关系数据库产品。它是一个支持 PB 级数据库的数据仓库,将对大型非结构化数据存储进行分析。
NoSQL
AWS 有许多 NoSQL 产品,包括:
- DocumentDB:与 MongoDB 兼容的文档存储
- 海王星:图形数据库
- DynamoDB:键值存储
- ElastiCache / MemoryDB:与 Redis 兼容的内存数据库
- TimeStream : 时间序列数据库
- KeySpaces : Apache Cassandra 兼容的列存储数据库
微软
微软的 Azure 也有大量的数据库产品。
Azure SQL 系列
Azure SQL是 Microsoft 在云中的 SQL Server。它有多种配置可供选择,具体取决于您需要的版本以及您希望如何使用它。
您可以在 Azure 虚拟机上运行 Azure SQL,或连接到最新版本的托管实例 Azure SQL 数据库。对于需要向后兼容的客户端,Azure SQL 托管实例拥有与企业版近 100% 的兼容性,可追溯到 SQL Server 2008。
Azure SQL Edge 是 SQL Server 的专用版本,支持流式处理和时间序列数据。
Azure Synapse
Azure Synapse提供企业分析。它是一种数据仓库产品,使用 Apache Spark 和其他技术来管理数据仓库和湖。
CosmosDB
CosmosDB是一个托管的 NoSQL 数据库。它支持文档、图形、宽列、键值和图形数据模型。
托管实例 Cassandra
Azure 还支持托管 Cassandra 实例以在云中运行开源列数据库。
谷歌
虽然 Google 的云平台缺乏 AWS 和 Azure 数据库产品的深度和广度,但它仍然可以提供很多东西。
关系数据库
- Cloud Spanner是一个具有高可扩展性和吞吐量的分布式 SQL 数据库。它提供全局复制、低维护和自动处理分片。Google 于 2022 年为 Spanner 发布了 PostgreSQL 接口。
- Cloud SQL是一种完全托管的关系数据库服务,支持 MySQL、PostgreSQL 和 SQL Server。
- Bare Metal Oracle:经过全面认证的基础架构,用于在云中运行 Oracle 数据库
NoSQL
- BigQuery:用于存储和分析大量数据的无服务器且高度可扩展的数据仓库。
- Cloud BigTable:用于具有数十亿行的大规模工作负载的宽列存储
- Firestore/FireBase:文档数据库
- MemoryStore:托管 Redis 和 Memcached 兼容服务
- Astra:GCPl 上的托管 Cassandra 服务不受 Google 管理
甲骨文
Oracle 提供了其自治数据库,这是一个云数据库套件,其中包括带有机器学习工具的数据库引擎和一个可简化建模数据、ETL 和数据库管理的扩展。它在Oracle 云基础设施 (OCI)上运行。
需要更传统产品的团队可以运行Oracle 标准数据库服务。它适用于从本地服务或传统关系作业迁移数据库。
Oracle 还有一个云MySQL 服务,以及他们的Cloud NoSQL数据库,它支持 JSON 文档、列数据和键值。
哪一个?
那么哪种产品最好?有太多的选择,没有正确的答案。
AWS 拥有最广泛的选择,但其中许多都是特定于平台的,并将您锁定在他们的云中。微软紧随其后,但他们的大部分产品都强调他们的产品。
所有供应商都有 MySQL 实现,而只有 Oracle 缺少 PostgreSQL 和 Cassandra 实现。
所以好消息是,如果您坚持使用开源数据库技术,您可能会在任何主要的云提供商中找到家,并且可以根据位置和价格进行选择。
原文标题:Cloud Database Services Compared: AWS, Microsoft, Google, and Oracle
原文作者: Eric Goebelbecker
原文链接:https://dzone.com/articles/cloud-database-services-compared-aws-microsoft-goo