• pg_test_fsync的使用说明


    瀚高数据库
    目录
    文档用途
    详细信息

    文档用途
    pg_test_fsync是一种用于测试在指定系统上哪一种wal_sync_method最快的命令,该命令还可以在发生认定的 I/O 问题时提供诊断信息。

    pg_test_fsync为 wal_sync_method报告以微秒计的平均文件同步操作时间,也能被用来提示用于优化commit_delay值的方法,本文主要用于介绍pg_test_fsync的使用方法。

    详细信息
    使用语法:

    pg_test_fsync [option...]
    

    选项说明:

    pg_test_fsync
    

    接受下列命令行选项:

    -f

    –filename

    指定要写入测试数据到其中的文件名。这个文件必须位于和 pg_wal目录所在或者将被放置的同一个文件系统中(pg_wal包含WAL文件)。默认是当前目录中的pg_test_fsync.out。

    -s

    –secs-per-test

    指定每次测试的秒数。每个测试的时间越长,测试的精度就越高,但是它需要更多时间来运行。默认是 5 秒,这允许程序在2分钟以内完成。

    -V

    –version

    打印pg_test_fsync版本并且退出。

    -?

    –help

    显示有关pg_test_fsync命令行参数的帮助并且退出。

    使用举例:

    [root@node1 bin]# pg_test_fsync -f /tmp/pg_test_fsync.data
    
    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                               997.878 ops/sec     1002 usecs/op
    
            fdatasync                                 1016.510 ops/sec     984 usecs/op
    
            fsync                                    393.544 ops/sec     2541 usecs/op
    
            fsync_writethrough                                   n/a
    
            open_sync                                 407.743 ops/sec     2453 usecs/op
    
    Compare file sync methods using two 8kB writes:
    
    (in wal_sync_method preference order, except fdatasync is Linux's default)
    
            open_datasync                              515.242 ops/sec      1941 usecs/op
    
            fdatasync                                 980.880 ops/sec     1019 usecs/op
    
            fsync                                   387.264 ops/sec      2582 usecs/op
    
            fsync_writethrough                                   n/a
    
            open_sync                                 199.399 ops/sec     5015 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                     383.326 ops/sec      2609 usecs/op
    
             2 * 8kB open_sync writes                     229.837 ops/sec      4351 usecs/op
    
             4 * 4kB open_sync writes                     115.235 ops/sec      8678 usecs/op
    
             8 * 2kB open_sync writes                      57.760 ops/sec     17313 usecs/op
    
              16 *  1kB open_sync writes                   28.793 ops/sec     34731 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                          450.947 ops/sec      2218 usecs/op
    
            write, close, fsync                          447.291 ops/sec      2236 usecs/op
    
    Non-sync'ed 8kB writes:
    
            write                                  62159.556 ops/sec       16 usecs/op
    

    注:ops/sec–每秒操作数,数值越大性能越高

    usecs/op–每个操作平均耗时,数值越小性能越高

    根据运行结果,在本次测试环境中wal_sync_method的最优配置为fdatasync。

  • 相关阅读:
    购买服务器,并安装宝塔
    关于地方美食的HTML网页设计——地方美食介绍网站 HTML顺德美食介绍 html网页制作代码大全
    记录一次时序数据库的实战测试
    敏捷发布火车的沧海桑田
    网易游戏如何基于 Apache Doris 构建全新湖仓一体架构
    图像随机抖动算法
    净利暴跌9成,主力业务下滑,这家全球知名CIS供应商如何“翻身”?
    SpringMvc的第二天
    GPT-SoVITS教程,接入酒馆AI,SillyTavern-1.11.5,让AI女友声若幽兰
    TiUP Cluster
  • 原文地址:https://blog.csdn.net/pg_hgdb/article/details/140465323