pgbench 之二 混合测试

版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/ctypyb2002/article/details/84305209

os: centos 7.4
db: postgresql 10.6

# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)

# su - postgres -c "psql -c \"select version();\""
                                                 version                                                 
---------------------------------------------------------------------------------------------------------
 PostgreSQL 10.6 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit
(1 row)

混合单进程

$ /usr/pgsql-10/bin/pgbench -b simple-update@3 -b select-only@6 -b tpcb-like@1 -r -T60 pgbenchdb

starting vacuum...end.
transaction type: multiple scripts
scaling factor: 20
query mode: simple
number of clients: 1
number of threads: 1
duration: 60 s
number of transactions actually processed: 226662
latency average = 0.265 ms
tps = 3767.686567 (including connections establishing)
tps = 3767.865414 (excluding connections establishing)
SQL script 1: <builtin: simple update>
 - weight: 3 (targets 30.0% of total)
 - 67967 transactions (30.0% of total, tps = 1129.780699)
 - latency average = 0.399 ms
 - latency stddev = 1.147 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         0.001  \set bid random(1, 1 * :scale)
         0.001  \set tid random(1, 10 * :scale)
         0.000  \set delta random(-5000, 5000)
         0.024  BEGIN;
         0.160  UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
         0.095  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
         0.084  INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
         0.033  END;
SQL script 2: <builtin: select only>
 - weight: 6 (targets 60.0% of total)
 - 135906 transactions (60.0% of total, tps = 2259.095969)
 - latency average = 0.137 ms
 - latency stddev = 2.824 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         0.135  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
SQL script 3: <builtin: TPC-B (sort of)>
 - weight: 1 (targets 10.0% of total)
 - 22789 transactions (10.1% of total, tps = 378.809898)
 - latency average = 0.634 ms
 - latency stddev = 1.633 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         0.001  \set bid random(1, 1 * :scale)
         0.001  \set tid random(1, 10 * :scale)
         0.000  \set delta random(-5000, 5000)
         0.024  BEGIN;
         0.162  UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
         0.095  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
         0.114  UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
         0.116  UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;
         0.084  INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
         0.035  END;
		 

混合多进程

$ /usr/pgsql-10/bin/pgbench -b simple-update@3 -b select-only@6 -b tpcb-like@1 -r -j2 -c10 -T60 pgbenchdb

starting vacuum...end.
transaction type: multiple scripts
scaling factor: 20
query mode: simple
number of clients: 10
number of threads: 2
duration: 60 s
number of transactions actually processed: 244317
latency average = 2.460 ms
tps = 4065.028038 (including connections establishing)
tps = 4065.217730 (excluding connections establishing)
SQL script 1: <builtin: simple update>
 - weight: 3 (targets 30.0% of total)
 - 73307 transactions (30.0% of total, tps = 1219.706408)
 - latency average = 3.030 ms
 - latency stddev = 16.455 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         0.001  \set bid random(1, 1 * :scale)
         0.001  \set tid random(1, 10 * :scale)
         0.000  \set delta random(-5000, 5000)
         0.182  BEGIN;
         2.019  UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
         0.298  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
         0.318  INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
         0.201  END;
SQL script 2: <builtin: select only>
 - weight: 6 (targets 60.0% of total)
 - 146702 transactions (60.0% of total, tps = 2440.876989)
 - latency average = 1.856 ms
 - latency stddev = 15.552 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         1.868  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
SQL script 3: <builtin: TPC-B (sort of)>
 - weight: 1 (targets 10.0% of total)
 - 24283 transactions (9.9% of total, tps = 404.028683)
 - latency average = 4.292 ms
 - latency stddev = 19.446 ms
 - statement latencies in milliseconds:
         0.002  \set aid random(1, 100000 * :scale)
         0.001  \set bid random(1, 1 * :scale)
         0.001  \set tid random(1, 10 * :scale)
         0.001  \set delta random(-5000, 5000)
         0.182  BEGIN;
         1.984  UPDATE pgbench_accounts SET abalance = abalance + :delta WHERE aid = :aid;
         0.297  SELECT abalance FROM pgbench_accounts WHERE aid = :aid;
         0.413  UPDATE pgbench_tellers SET tbalance = tbalance + :delta WHERE tid = :tid;
         0.681  UPDATE pgbench_branches SET bbalance = bbalance + :delta WHERE bid = :bid;
         0.486  INSERT INTO pgbench_history (tid, bid, aid, delta, mtime) VALUES (:tid, :bid, :aid, :delta, CURRENT_TIMESTAMP);
         0.246  END;

猜你喜欢

转载自blog.csdn.net/ctypyb2002/article/details/84305209