随着云计算技术的飞速发展,关系型数据库作为应用架构的核心基础设施,其性能表现直接影响业务运行效率和用户体验。PostgreSQL(简称Postgres)因其卓越的功能性和开源优势,成为许多企业首选的数据库解决方案。然而,面对市场上众多云服务供应商提供的托管Postgres服务,如何科学、公正地评估其性能,成为了企业选择的关键所在。PlanetScale作为一家专注于数据库性能优化的云服务厂商,近期推出了针对Postgres的全新产品——PlanetScale for Postgres。通过一套严格且透明的基准测试体系,PlanetScale展示了其Postgres产品在性能和成本效益方面的卓越表现。了解基准测试的核心原理及执行细节,能帮助开发者和运维人员更理性地进行数据库选型。
基准测试,是指采用一系列预定的测试用例模拟现实应用场景,对比不同数据库系统在相同测试条件下的响应时间、吞吐量和资源消耗等指标。理想的基准测试应确保公平性和可重复性,避免因为环境差异带来测试结果偏差。PlanetScale内部开发了名为“Telescope”的工具,用于创建、运行和分析基准测试,确保测试结果的科学性与透明性。该工具被广泛应用于产品研发过程中,用于实时反馈和性能调优。后续,PlanetScale将这些测试结果及工具免费分享给公众,促进整个数据库生态的进步。Postgres基准测试关注的核心问题包括:数据库的基本响应延迟表现、处理典型OLTP(联机事务处理)负载的能力、面对高并发读写压力时的稳定性和IO性能,以及在不同供应商资源配置条件下的性价比。
为此,PlanetScale设定了三个主要测试类型。首先是延迟测试,通过简单查询SELECT 1; 通过从同一区域的独立实例多次执行,测量数据库返回查询结果的时间,反映基础查询路径的响应性能。其次是TPCC类似基准,采用Percona开发的脚本,模拟真实电商场景中的订单处理业务。这部分测试能全面反映数据库在事务处理、并发操作、数据写入和查询方面的综合能力。最后是只读OLTP测试,基于sysbench工具的oltp_read_only测试,重点评估数据库在高比例读取请求下的性能表现。为了保证测试的公平性,PlanetScale严格对比了多家主流云Postgres供应商的产品,包括Amazon Aurora、Google AlloyDB、Neon/Lakebase、Supabase、CrunchyData、TigerData、Heroku Postgres以及Xata。
PlanetScale的测试环境主要基于i8g M-320实例,配备4个vCPU、32GB内存及937GB NVMe SSD存储,这样的配置能够支撑数千每秒请求量(QPS),且满足低延迟和高可用性的生产需求。在可用性方面,PlanetScale默认提供了主节点及跨三个可用区的双副本架构,确保系统持续在线和读负载的分散处理。相比之下,竞争对手多为单实例部署测试,虽然部分支持自定义IOPS,但整体架构在可用性和容灾能力上相对不足。为保证资源匹配,测试中对各家供应商产品的vCPU和内存都进行了按照或超过PlanetScale配置的调整。例如Amazon Aurora与Google AlloyDB采用的内存与CPU比例为8:1,PlanetScale据此匹配对应规格实例。部分供应商如Supabase、TigerData和Neon则只支持4:1内存与CPU比例,测试团队选择了匹配最高内存配置,从而使对手拥有更高的CPU资源,这种设置实际上给予对手一定优势。
然而,即使拥有更多的CPU资源,PlanetScale依旧在性能表现上有明显领先。存储方面,各产品均采用网络附加存储,但有些供应商如Amazon Aurora、Neon以及AlloyDB不支持调整IOPS参数;而Supabase和TigerData则提供了提升默认IOPS配置的可能。考虑到存储IO对数据库性能的重要性,PlanetScale特别注意了这一点,确保在测试环境中给予足够的存储性能优化。测试的执行严格遵守统一规则,包括所有数据库服务和基准测试机器都部署在相同云区域内,大部分在美国东部的us-east-1区域,Google产品除外,为us-central1区域。基准测试机器具体规格为AWS c6a.xlarge(4 vCPU,8GB内存)和GCP e2-standard-4(4 vCPU,16GB内存),相应地域配置保证测试的统一性和可比性。Postgres数据库的配置保持各供应商默认设置,仅在连接数和超时参数上做必要调整以适应基准负载。
TPCC测试数据基于Percona脚本生成,选用TABLES=20和SCALE=250参数,构建规模约为500GB的数据库,模拟大规模电商场景。同时,提供完整的测试复现指南,方便开发者和研究员自行验证和探索。延迟测试通过连续执行200次SELECT 1;指令,记录每次的往返时间,数据直观且易于实施。通过这些严谨步骤,PlanetScale实测结果无疑证明了PlanetScale Metal云架构在Postgres应用上的领先优势。无论是基础延迟响应、TPCC综合事务性能还是只读负载下的吞吐量,PlanetScale均优于其他主流服务,且在整体资源利用效率及成本效益方面表现更出色。性能的提升直接转化为更流畅的用户体验、更快速的业务响应以及更低的云运营成本。
此外,PlanetScale倡导开放透明的测试文化,诚邀其他数据库产品供应商参与反馈和改进,推动数据库行业的健康发展和技术创新。对于企业而言,深入理解基准测试的细节及局限性极其重要。每个业务的数据库负载、数据结构和访问模式不尽相同,单一基准成绩无法完全代表实际运维环境中的表现。评估时应结合自身场景,综合考虑请求模式、数据冷热比例及扩展需求。基准测试提供的参考价值在于帮助理解不同架构和资源配置对性能的潜在影响,指导合理采购及架构设计。PlanetScale为Postgres用户提供的MetalCT面向性能的创新部署模式,通过结合高性能裸金属服务器及分布式架构,打造了具备超低延迟和高稳定性的数据库环境。
借助Vitess的分片技术实现水平扩展,支持超大规模数据处理和高并发访问。配合对细节的极致优化,PlanetScale意图为复杂应用场景框定全新的性能标杆。总结来看,Postgres基准测试不仅展示了不同云供应商服务优劣,更是深入理解云数据库性能和成本平衡的窗口。PlanetScale凭借精心设计的测试方法和领先的Metal架构,树立了优异的标杆,有力推动了Postgres云服务生态的进步。未来,随着业务技术要求的不断升级,数据库性能测试和优化仍将是技术团队关注的重点。持续关注并参与行业基准测试开放交流,将帮助企业及时捕捉技术革新机遇,构建面向未来的可靠数据库解决方案。
。