前沿观察 | 分布式SQL性能对比

YugabyteDB 2.0版本的核心功能之一是与PostgreSQL兼容的YugabyteDB SQL(YSQL)API。在这篇文章中,我们将从性能和可扩展性两个方面,比较YSQL与其他两个兼容PostgreSQL的分布式SQL数据库——Amazon Aurora PostgreSQL和CockroachDB。

SQL基准测试表明,YSQL的可扩展性是Amazon Aurora能达到的最大吞吐量的10倍。此外,对于类似的硬件配置,YSQL和Amazon Aurora相比,吞吐量提高了近2倍,延迟却只有后者的一半。

分布式SQL数据库将RDBMS的SQL语言和事务处理功能与NoSQL数据库特有的云原生功能,例如高可用性,可伸缩性,容错性和地理分布,结合在一起。

基准设置

下表总结了这些数据库的设计要点。我们在这里明确不考虑Aurora PostgreSQL的多主机设置,因为它损害了数据的一致性。 前沿观察 | 分布式SQL性能对比_第1张图片

写性能在本文中,我们将研究这些数据库以下几个方面的性能和可扩展性:

扩展写 扩展读 扩展连接 分布式事务 以下所有基准测试都是在AWS云的俄勒冈区进行的。YugabyteDB 2.0部署在一个跨多可用区的类型为i3.4xlarge的三节点群集上(每个节点上有16个vCPU)。整个部署架构可以显示为下面的UI屏幕截图。 前沿观察 | 分布式SQL性能对比_第2张图片

CockroachDB(版本19.1.4)配置与YugabyteDB相同。Aurora PostgreSQL部署在类型为db.r5.4xlarge的双节点上(每个节点上有16个vCPU)。一个节点是主节点,另一个节点是备用节点,用于在其他可用区中进行快速故障转移。此设置如下所示。 前沿观察 | 分布式SQL性能对比_第3张图片

请注意,CockroachDB仅支持串行化隔离,而YugabyteDB和Amazon Aurora同时支持串行化和快照隔离。Amazon Aurora甚至支持较低的提交读隔离级别,这也是它的默认设置。这篇文章中的基准测试使用所有数据库中的默

你可能感兴趣的:(前沿观察 | 分布式SQL性能对比)