我的编程空间,编程开发者的网络收藏夹
学习永远不晚

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

今天就跟大家聊聊有关PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

今天下午我本想测试下DragonFly dports, 突然我想为什么不比较下PostgreSQL在BSD和Linux下的性能的差异。 为此我定了一些标准来比较在不同操作系统上的性能差异。 我使用相同的硬件和软件以便更准确的获得数据。这些测试是基于PGSQL9.1下的。

当我在 Debian Linux 下测试之后,结果令我非常吃惊,于是我又在其他的Linux系统做了测试, 如类Redhat的Centos6.4。

以下是我测试的一些操作系统:

  • DragonFlyBSD 3.4.1 (Hammer)

  • FreeBSD 9.1-p3 (UFS2+J)

  • FreeBSD 9.1-p3 (ZFS v28)

  • Debian 7: Wheezy (ext4, kernel 3.2)

  • Debian 7: Wheezy (ext4, kernel 3.2, barrier=0)

  • Centos 6.4 (ext4, kernel 2.6.32)

  • Centos 6.4 (ext4, kernel 2.6.32, nobarrier)

对于硬件部分,我使用的是基于KVM (libvirt)系统的24G内存和一个Phenom x6 1055T 处理器。版本如下:

qemu 1.4.1-3  libvirt 1.0.5-4

每个虚拟机都使用相同的配置:

  • 50GB 硬盘 (除了 FreeBSD)

  • 12GB 内存

  • 4核 CPU

现在测试。命令遵循: pgbench -T 60 -cX -jX

在数据库上60秒内做 pgbench 实例测试,使用X用户和X线程(一个线程一个用户)

每个数据库都是默认的配置,同时支持300个需求同时连接

***部分:虚拟驱动

***个图展示了实时事务处理量,第二个图是每秒事务处理量。

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么 PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

性能测试的结果是令人吃惊的。‍DragonflyBSD(默认的操作系统) 的性能超过其他所有的系统,紧随其后的是FreeBSD。DragonflyBSD的性能比FreeBSD有25%的提升比Linux(s)有200%的提升!

我们有2个Linux远远的超过其他系统,达到7000事务的处理量。如过不考虑客户端的数量还是无法超越它。曲线图是令人吃惊的统一。只有Debian 没有达到测试的终点,因为不手动修改参数Debian PostgreSQL 不能同时有100个连接。

实际上,这7000条曲线解释了ext4栅栏系统(barrier system)保护的文件系统,在PostgreSQL上性能是非常差的。在第二项测试中,我们已经对ext4添加nobarrier/barrier=0选项(通过/etc/fstab)。这个选项处理(debrid)的FS,但是它是一个非常有风险的选项。仅当你有一个磁盘阵列的 1/5/6 控制器时才去使用它。当有一个写操作在你的磁盘上完成的时候,如果你的服务器重启(例如:电力故障......),文件或者整个磁盘可能就会崩溃,并且要是处于数据库实例中,那后果将非常悲惨。

总之,我们的FreeBSD在ZFS上的工作弥补了Linux(s).也许是由于虚拟化?或者是问题出在ZFS的概念上吗?

第二部分:物理驱动器

为了验证我们的研究结果,我们意识到,同一基准的物理驱动器上。我只有保持性能与优化,除了 ZFS,必须有一个点在这种支持的比较。在这里 Centos 被删除,因为它的性能与Debian相差不多。

***张曲线图是每1分钟的处理量:

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

第二张曲线图是每1秒的处理量:

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

DragonFlyBSD 在物理和虚拟之间的性能很接近, 我们可以说 virtio 的驱动程序非常好。Debian 有同样的问题,以每分钟 50,000 次请求。

有两点你要注意:

  • UFS 性能(async和noatime选项),(能提高)两倍或者三倍性能,但是你也必须同样保证是ext4(nobarrier选项)

  • 通过设置sync=disabled和atime=off选项,使ZFS增加10-15左右的性能,胜过所有其他的FS及其所提供的联合性能。此外,sync=disabled选项相比于nobarrier/async选项的危险性低。

ZFS是这个物理指标的***。

你可以看一下下面这个精确基准数据的链接:

Benchmarks – PostGreSQL

***,如果你为你的PostgreSQL数据库选择一个系统,使用BSD不用犹豫,即使你没有磁盘阵列控制器,你也可以选择FreeBSD(UFS)或者DragonFlyBSD(Hammer),其次再选择Linux。

看完上述内容,你们对PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么

今天就跟大家聊聊有关PostgreSQL运行在FreeBSD和Linux的表现的测试数据是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。今天下午我本想测试下DragonFly d
2023-06-16

MySQL对数据表已有表进行分区表的实现方法是什么

本篇内容介绍了“MySQL对数据表已有表进行分区表的实现方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!操作方式@1 可以使用ALT
2023-06-25

在Netdata中实现跨多个服务器和服务的聚合监控数据视图的方法是什么

在Netdata中实现跨多个服务器和服务的聚合监控数据视图的方法是通过使用Netdata的分布式架构和数据收集器。 Netdata提供了一个称为Netdata Cloud的中央管理平台,可用于集中管理和监控多个Netdata节点。要实现跨
在Netdata中实现跨多个服务器和服务的聚合监控数据视图的方法是什么
2024-06-03

编程热搜

目录