< orczhou.com

云厂商RDS PostgreSQL 性能对比

在不同的云厂商,购买相同规格的 PostgreSQL 实例,获得的性能相同吗?本文使用 HammerDB,对不同云厂商的同样规格“4vCPU-16GB”进行性能测试来尝试回答上述问题。

HammerDB NOPM 详细数据

dataaliyunawsazurebaidugooglehuaweitencent
4111595451423272163127527664894871942
8119127662585760811438467060107971131820
16114861747016585917351869745137311205286
32121721934217777820261250951168526239611
48167499862065813621253753195160690245468
64219941788446565821138758771171571253374
96272737729886800121452173041145009255348
128295949733946534422196780804165685256283
192187361717315183417550688645157009249002
256232846571584638517314096277151988243367
3841828606112946103166586101374148380219641
512211111488125143816227497850123454202334

Latency (Event) 详细数据

如下表格分别为:创建订单的平均延迟 和 95%延迟数据,单位为毫秒/ms。

dataaliyunawsazurebaidugooglehuaweitencent
43.196.059.544.296.086.163.80
86.097.9510.534.517.975.094.23
1611.3813.0915.955.7715.148.565.39
3218.9820.6025.559.7737.8212.468.80
4821.9535.1248.4113.9354.9219.3612.62
6419.4150.4863.0618.4368.4923.9616.25
9625.5975.9686.3127.1284.8437.8823.57
12834.84103.47110.7833.48109.5346.8332.78
19274.04172.39213.2861.81158.7177.4253.39
25682.84259.21354.6481.40207.35109.5774.94
384118.81442.18552.18129.39309.36189.03127.98
512138.27715.55670.41NANA268.33166.06
dataaliyunawsazurebaidugooglehuaweitencent
412.987.3417.865.3011.909.704.63
832.598.1623.256.4215.218.649.02
1657.4912.6136.969.6224.1817.6211.29
3279.1135.3960.9317.85180.6425.0919.43
4881.5873.03108.8926.58219.1939.5828.93
6469.0496.63143.8238.81235.4748.7239.73
9680.18214.22189.5960.60255.9786.2556.84
128101.78455.31255.3280.27299.24102.1689.65
192199.72870.53550.73171.94401.29195.37143.30
256251.301052.08978.31237.99563.66274.02176.93
384371.821899.691706.44424.60842.40469.09391.07
512452.253219.202133.27NANA730.46522.09

参数表

dataaliyunawsazurebaidugooglehuaweitencent
autovacuumononononononon
block_size8192819281928192819281928192
effective_cache_size1048576992280157286411796488191421572864524288
cache_size_in_GB8 GB7.57 GB12 GB9 GB6.25 GB12 GB4 GB
fsyncononononononon
max_connections16201705171816005007682048
max_worker_processes8888888
shared_buffers489705496140524288589824682496524288524288
shared_buffers_in_GB3.74 GB3.79 GB4 GB4.5 GB5.21 GB4 GB4 GB
synchronous_commitoffonononononon
synchronous_standby_namesANY 1 ( “azure_…ANY 1 (dbnode1)athena_23671246…
wal_buffers8192819220482048204820482048
wal_writer_delay200200200200200200200
instance_typepg.x4.large.2cdb.m7i.xlargeGP_Standard_D4ds_v54db-custom-4-16384rds.pg.x1.xlarge.4.ha4c
storage_typecloud_essdio1NAcloud_enhaNACLOUDSSDNA
storage_size100100128100100100100
storage_iopsNA3000P20NANANANA

历史测试数据

测试方法与重现

这里使用开源的 HammerDB 进行测试,可以参考如下说明进行测试重现。

主要的测试参数

这里使用的 tpcc-like 的场景进行测试。测试数据大小则由 warehouses 数量决定,单个大小约为95 MB。这里使用的 warehouses 数量为 80 个。所以,数据量大约为 7.4 GB。测试的并发用户数,则如上所示,从最小 4 线程到最多的512个线程。其他参数包括:

  • rampup 为 2;# 预热时间为2分钟
  • duration 为5;# 一次并发测试为5分钟

数据库实例选择

数据库的规格参数,可以参考上述“参数表”:

  • 规格代码,参考“参数表”中的“instance_type”行,该规格代码通常代表了该示例的CPU和Memory资源
  • 各个云厂商的磁盘差异很大,这里小结如下:
awsaliyuntencentbaiduocigoogleazurehuawei
iops30006800NANA75000NA2,3003000
typeio1PL_1本地SSD增强型SSDOCI_OPTIMIZED_STORAGENAP20CLOUDSSD
size100100100100100100128100
refNA参考参考参考参考参考参考

补充说明:

  • 阿里云计算公式:1800+50*100 min{1800+50存储空间, 50000, 实例规格最大IOPS}
  • 华为云计算公司: IOPS=min (20000, 1800 + 12 × 容量(GiB)
  • 腾讯云仅本地 SSD IOPS 并无相关说明

关于 HammerDB

HammerDB 是目前 PostgreSQL 领域使用较多的测试工具,该测试工具致力于基于 TPC 标准构建开源的、便于执行的多种数据库测试。主要的云厂商也通常会发布 HammerDB 的性能数据作为托管 PostgreSQL 的基准性能,例如:

Leave a Reply

Your email address will not be published. Required fields are marked *