默认的内建事务脚本
BEGIN;
--1UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
--2SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
--3UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
--4UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;
--5INSERTINTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
END;
如果选择simple-update内建脚本(选项 -N),第 3 和 4 步不会被包括在事务中。
如果选择select-only内建脚本(选项 -S),只会发出SELECT。
5.pgbench典型输出格式
transaction type:<builtin:TPC-B(sortof)>scaling factor:10# 有四张表,这里是10,相当于每个表的数据*10(大概10倍,并不是准确的) -squery mode:simple# 共三种查询方式:-M, --protocol=simple|extended|preparednumber of clients:10# 并行客户端连接数 -c number of threads:1# 工作线程数,多个客户端公用这些工作线程 -jnumber of transactions per client:1000number of transactions actually processed:10000/10000tps=85.184871(includingconnectionsestablishing)tps=85.296346(excludingconnectionsestablishing)前六行报告一些最重要的参数设置。接下来的行报告完成的事务数以及预期的事务数(后者就是客户端数量与每个客户端事务数的乘积),除非运行在完成之前失败,这些值应该是相等的(在-T模式中,只有实际的事务数会被打印出来)。最后两行报告每秒的事务数,分别代表包括和不包括开始数据库会话所花时间的情况。默认的类TPC-B事务测试要求预先设置好特定的表。可以使用-i(初始化)选项调用pgbench来创建并且填充这些表(当你在测试一个自定义脚本时,你不需要这一步,但是需要按你自己的测试需要做一些设置工作)。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示