暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

[译文] 对 PostgreSQL 进行基准测试:提高性能稳定性

原创 Vik Fearing 2021-08-24
350

继续我的每月 PostgreSQL 基准测试系列,这些最新发现旨在帮助开发人员提高 PostgreSQL 性能稳定性。当我不得不重置用于每天500个用户基准测试的 AWS 实例并损失 20% 的性能时,我发现了性能稳定性问题。我唯一的解释是重置实例在数据中心物理移动。从正在进行的基准测试的角度来看,这是不可接受的。我需要知道性能回归是否是由于代码更改引起的,因此环境必须尽可能保持稳定。

测试

为了更好的控制环境,EDB购买了一台我们自己托管的专用服务器。为了帮助我们了解存储系统的 I/O 性能,我们使用fio运行了许多测试。这样做的原因是为了确保我们充分利用硬件,因为 EDB 团队内部对 N​​VMe 驱动器的性能以及使用 Linux 软件 RAID (mdraid) 是否会对CPU 结果。我们使用 2TB 测试来确保数据比系统上可用 RAM 大得多,但只有一个驱动器测试没有足够的空间。fio配置如下:

[root@chaos ~]# cat read-write.fio [read-write] rw=rw rwmixread=75 # 18g for 2+ drives size=13g directory=/nvme fadvise_hint=0 blocksize=8k direct=0 # 1 job per available CPU thread numjobs=112 nrfiles=1 runtime=1h time_based exec_prerun=echo 3 > /proc/sys/vm/drop_caches
复制

结果如下所示:

读/写比 驱动配置 # 驱动器大小 大小/核心 (MiB) 总大小 (GiB) 读取 IOP 写入 IOP 总眼压 读取带宽 (MB/s) 写入带宽 (MB/s) 总体重
75/25 1 个 NVMe 1 1.5TB 13312 1456 305,766 101,877 407,643 2505 835 3340
75/25 2 个 NVMe,RAID 0 2 3.0TB 18432 2016年 614,783 204,890 819,673 5037 1679 6716
75/25 4 个 NVMe,RAID 0 4 6.0TB 18432 2016年 1,238,221 403,096 1,641,317 9907 3303 13210
75/25 6 个 NVMe,RAID 0 6 9.0TB 18432 2016年 1,609,626 527,612 2,137,238 12288 4122 16410

或以图形形式:

image.png

这些驱动器基本上是线性扩展的,这非常令人放心。我们的信念是,它可能会继续几乎线性扩展,直到驱动器使用的 PCI 通道数(它们是 x4 驱动器,因此每个通道有四个通道)接近系统中的通道数(每个通道 48 个)。两个 Xeon Gold 6258R CPU)。当然,我们只有六个驱动器,因此无法验证该理论。

请注意,这些测试是使用 RAID 0(条带化)执行的。Linux mdraid 很可能会使用更多(或更少)具有不同 RAID 级别的 CPU 资源。RAID 0 在这里是合适的,因为我们试图最大限度地提高跨设备并行读/写的可能性,因为这台机器旨在运行回归测试的基准测试,而不是存储有价值的生产数据。

结果

该机器的完整规格如下:

PowerEdge R740XD 服务器

  • 2 个英特尔至强金牌 6258R 2.7G、28C/56T、10.4GT/s、38.5M 缓存
  • 16 x 64GB RDIMM,3200MT/s,双列(共 1TB)
  • 4 x 800GB SSD SAS 混合使用 12Gbps 512e 2.5 英寸热插拔 AG 驱动器
  • 6 个戴尔 1.6TB、NVMe、混合使用 Express Flash、2.5 SFF 驱动器
  • 1 个 Broadcom 57412 双端口 10GbE SFP+ 和 5720 双端口 1GbE BASE-T rNDC

如果您正在努力提高性能稳定性,这些发现应该有助于简化流程。请继续关注下个月,届时我将展示使用该机器的 PG 13.3 和 PG 14beta1 之间的比较。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论