PostgreSQL自带的命令行工具15- pg_test_fsync

PostgreSQL自带的命令行工具15- pg_test_fsync

基础信息
OS版本:Red Hat Enterprise Linux Server release 7.9 (Maipo)
DB版本:16.2
pg软件目录:/home/pg16/soft
pg数据目录:/home/pg16/data
端口:5777

pg_test_fsync 是 PostgreSQL 提供的一个实用工具,它用于测试和衡量文件系统同步操作的性能。这个工具可以帮助数据库管理员理解 PostgreSQL 数据库在当前硬件和操作系统上进行数据写入和同步时的性能表现。fsync 操作是数据库确保数据从内存写入磁盘,并且稳定存储的重要步骤,它对数据库的持久性和恢复能力至关重要。

通过help查看帮助文档。

[pg16@test ~]$ pg_test_fsync --help
Usage: pg_test_fsync [-f FILENAME] [-s SECS-PER-TEST]

基本用法

pg_test_fsync 通过执行多种测试方法来衡量 fsyncopen/write/closefdatasyncO_DIRECT 写入的性能。使用此工具不需要特殊的参数,只需要在命令行中执行:

pg_test_fsync

执行后,pg_test_fsync 会依次运行多种测试,并报告每种方法的操作次数和每秒操作数,这有助于评估不同的同步方法对性能的影响。

[pg16@test ~]$ pg_test_fsync
5 seconds per test
O_DIRECT supported on this platform for open_datasync and open_sync.

Compare file sync methods using one 8kB write:
(in wal_sync_method preference order, except fdatasync is Linux's default)
        open_datasync                      8980.128 ops/sec     111 usecs/op
        fdatasync                          8783.495 ops/sec     114 usecs/op
        fsync                              7032.075 ops/sec     142 usecs/op
        fsync_writethrough                              n/a
        open_sync                          7308.552 ops/sec     137 usecs/op

Compare file sync methods using two 8kB writes:
(in wal_sync_method preference order, except fdatasync is Linux's default)
        open_datasync                      4845.319 ops/sec     206 usecs/op
        fdatasync                          9473.586 ops/sec     106 usecs/op
        fsync                              6888.160 ops/sec     145 usecs/op
        fsync_writethrough                              n/a
        open_sync                          3684.426 ops/sec     271 usecs/op

Compare open_sync with different write sizes:
(This is designed to compare the cost of writing 16kB in different write
open_sync sizes.)
         1 * 16kB open_sync write          7159.966 ops/sec     140 usecs/op
         2 *  8kB open_sync writes         3642.354 ops/sec     275 usecs/op
         4 *  4kB open_sync writes         1871.279 ops/sec     534 usecs/op
         8 *  2kB open_sync writes          953.819 ops/sec    1048 usecs/op
        16 *  1kB open_sync writes          491.511 ops/sec    2035 usecs/op

Test if fsync on non-write file descriptor is honored:
(If the times are similar, fsync() can sync data written on a different
descriptor.)
        write, fsync, close                6918.714 ops/sec     145 usecs/op
        write, close, fsync                6897.709 ops/sec     145 usecs/op

Non-sync'ed 8kB writes:
        write                            792349.557 ops/sec       1 usecs/op

输出解析

pg_test_fsync 输出的主要信息包括:

  • 每种同步/写入方法的测试结果,包括延迟、每秒操作的次数(tps)等。
  • 测试方法,如 fsyncfdatasync 或使用 O_DIRECT 标志的 open/write/close 操作等。
  • 针对每种方法的性能表现,使数据库管理员能够比较并选择最佳的同步策略。

高级选项

pg_test_fsync 也提供了一些可选参数,数据库管理员可以用它们来自定义测试行为,如指定测试文件的大小或测试的持续时间。例如:

  • -f:指定测试文件的名称。
  • -s:表示执行每一种同步或写入测试所用的时间,以秒为单位。

使用场景

pg_test_fsync 特别适用于:

  • 新设置的系统:检测不同的文件系统配置和硬件性能。
  • 性能优化:确定 PostgreSQL 数据库最佳的同步策略,尤其是在高写入场景下。
  • 故障诊断:在遇到数据库性能问题时,帮助定位是否与磁盘同步操作有关。

通过使用 pg_test_fsync,可以显著地提高 PostgreSQL 数据库的运行效率,通过选择最合适的同步方法来优化数据写入和恢复的性能。

谨记:心存敬畏,行有所止。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/605495.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Web API之DOM

DOM 一.认识DOM二.获取元素三.事件基础四.操作元素(1).改变元素内容(2).修改元素属性(str、herf、id、alt、title)(3).修改表单属性(4).修改样式属性操作(5).小结 五.一些思想(1).排他思想(2).自定义属性的操作 六.节点操作1.认识2.节点层级关系3.创建和添加、删除、…

电子硬件设计-Xilinx FPGA/SoC前期功耗评估方法(1)

目录 1. 简介 2. 使用方法 2.1 设计输入 2.2 查看结果 3. 额外说明 4. 总结 1. 简介 XPE (Xilinx Power Estimator, 功耗估算器) 电子表格是一种功耗估算工具,用于项目的预设计和预实现阶段。 该工具可以帮助工程师进行架构评估、器件选择、合适的电源组件以…

SpringCloudAlibaba:4.3云原生网关higress的JWT 认证

概述 简介 JWT是一种用于双方之间传递安全信息的简洁的、URL安全的声明规范。 定义了一种简洁的,自包含的方法用于通信双方之间以Json对象的形式安全的传递信息,特别适用于分布式站点的单点登录(SSO)场景 session认证的缺点 1.安…

liunx命令行 带颜色

for i in {1..49}; do echo -e "\033[;${i}m 这是${i}的效果 oldboy\E[0M"; done

如何彻底将CAD或者Cadence卸载干净

最近因为升级软件需要先彻底删除这两个软件,发现无论如何都不能卸载干净,于是乎找到这样一个软件帮助卸载或查找剩余的软件残留: 官网:https://geekuninstaller.com 支持软件和 UWP 应用的卸载,查看软件注册表和安装目…

防爆地下水位自动监测设备

TH-DSW1随着科技的不断进步,地下水资源监测技术也在日新月异。防爆地下水位自动监测设备作为一种先进的水文监测工具,其应用不仅提高了水资源管理的效率,还为保障水资源安全提供了有力支撑。 一、防爆地下水位自动监测设备的优势 防爆地下水…

跨协议通讯无缝对接:Modbus-BACnet楼宇智能转换器深度解析

在现代化的建筑群里,智能楼宇管理系统如同神经系统,协调着各设备的运行。某大型商业综合体,集购物中心、办公区、酒店于一体,面对着来自不同供应商的设备,如何实现统一管理和高效通讯成了首要挑战。特别是其内部既有采…

UE5 FARFilter筛选器使用方法

UE5 查找资源时可以用FARFilter进行筛选,之前可以用ClassNames进行筛选,但是5.1之后就弃用这个属性改成ClassPaths属性 构造一个FTopLevelAssetPath对象需要两个FName参数,但是没找到应该传什么 查找官方文档,明显是错误的&#x…

基于SSM的“小型企业人事管理系统”的设计与实现(源码+数据库+文档+PPT)

基于SSM的“小型企业人事管理系统”的设计与实现(源码数据库文档PPT) 开发语言:Java 数据库:MySQL 技术:SSM 工具:IDEA/Ecilpse、Navicat、Maven 系统展示 系统功能结构图 登录界面 个人信息页面 用户打卡页面 扣…

Docker 入门篇(七)-- Docker 安装 nginx

引言 Docker 系列文章 Docker 入门篇(一)-- 简介与安装教程(Windows和Linux) Docker官方镜像 https://hub.docker.com/ 一、安装 nginx 1.安装环境 Linux 环境:centos 7docker 版本:26.1.0nginx版本&…

CTF-密码学基础

概述 密码学(Cryptolopy):是研究信息系统安全保密的科学 密码学研究的两个方向: 密码编码学(Cryptography):主要研究对信息进行编码,实现对信息的隐蔽密码分析学(Cryptanalytics):主要研究加密信息的破译或消息的伪造…

Baidu Comate——让软件研发更高效、更智能

个人名片: 😊作者简介:一名大二在校生 🤡 个人主页:坠入暮云间x 🐼座右铭:给自己一个梦想,给世界一个惊喜。 🎅**学习目标: 坚持每一次的学习打卡 文章目录 一、Baidu Co…

Spring 事务及事务传播机制(1)

目录 事务 回顾: 什么是事务 为什么需要事务 事务的操作 Spring事务的实现 Spring编程式事务(简单了解即可, 问就是基本不用) 观察事务提交 观察事务回滚 Spring声明式事务 Transactional Transactional作用 事务 回顾: 什么是事务 定义: 事务是指逻辑上的一组操作, 构…

最大数字——蓝桥杯十三届2022国赛大学B组真题

问题分析 这道题属于贪心加回溯。所有操作如果能使得高位的数字变大必定优先用在高位,因为对高位的影响永远大于对低位的影响。然后我们再来分析一下,如何使用这两种操作?对于加操作,如果能使这一位的数字加到9则变成9&#xff0…

^_^填坑备忘^_^C#自动化编程实现STK+Exata对卫星互联网星座进行网络仿真

C#实际选择 STK11版本 or STK12版本的问题备注。 【C#自动化客户端调用STK时,实际选择 STK11版本 or STK12版本 的调试运行备注】 以下代码“更新并重新打包备份为”〔testSTKQualNetInterface备份08.1_★避坑★【种子卫星:天线直接安装在卫星上&#…

电机控制系列模块解析(19)—— 反电势观测器

随着现代工业自动化技术的飞速发展,交流电机作为关键的动力装置,其控制精度与效率日益受到重视。其中,无位置传感器控制技术由于其成本低、可靠性高、系统简洁等优点,逐渐成为研究热点。本文将对交流电机反电势观测器这一关键技术…

三维空间刚体运动

三维空间刚体运动是指刚体在三维空间中的运动,这种运动由平移和旋转构成。平移是指物体在空间中沿某一方向移动一定的距离,而旋转则是指物体绕某一轴旋转一定的角度。这两种运动都不会改变物体的形状和大小,因此被称为刚体运动。 在描述三维…

Qt跨平台开发demo(适用萌新)

最近需要参与一款Qt跨平台的软件开发,在此之前,特把基础信息做学习和梳理,仅供参考。 所使用的技术和版本情况如下: 虚拟机:VMware 16.2.5操作系统:ubuntu-20.04.6-desktop-amd64:Mysql数据库…

大模型入坑记:搭建本地大模型微调环境

为了让大模型发挥更大用途,决定在本地搭建大模型微调环境,在原有的PC上加装Tesla V100,前前后后耗时一个多月,遇到若干技术问题,好在目前已基本得到解决,也打破了很多网上店家包括身边专家对GPU搭建上的一些…

正版软件 | Total Uninstall - Windows 全功能卸载程序 新手入门教程

『软件简介』 Total Uninstall 是一款先进的系统监控与卸载工具,它通过创建安装前后的系统快照,为用户提供了一种全新的程序管理方式。这款软件具备两个主要功能:一是能够独立于系统自带的卸载程序,彻底移除已安装的应用程序&…
最新文章