diff options
author | Bruce Momjian <bruce@momjian.us> | 2000-06-19 13:54:50 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2000-06-19 13:54:50 +0000 |
commit | 6de7d4fe91b1f037eb9ad612a22e972037426100 (patch) | |
tree | 1661370f02a7ce6aa212a35b15d35f344faccad1 /contrib/pgbench/README | |
parent | b2c56574e1a83d4f71f72f9243423eeddbdbbe20 (diff) | |
download | postgresql-6de7d4fe91b1f037eb9ad612a22e972037426100.tar.gz |
Update to /contrib from Karel.
Diffstat (limited to 'contrib/pgbench/README')
-rw-r--r-- | contrib/pgbench/README | 149 |
1 files changed, 0 insertions, 149 deletions
diff --git a/contrib/pgbench/README b/contrib/pgbench/README index 093f2b9869..e69de29bb2 100644 --- a/contrib/pgbench/README +++ b/contrib/pgbench/README @@ -1,149 +0,0 @@ -pgbench 1.2 README 2000/1/15 Tatsuo Ishii (t-ishii@sra.co.jp) - -o What is pgbench? - - pgbench is a simple program to run a benchmark test sort of - "TPC-B". pgbench is a client application of PostgreSQL and runs - with PostgreSQL only. It performs lots of small and simple - transactions including select/update/insert operations then - calculates number of transactions successfully completed within a - second (transactions per second, tps). Targeting data includes a - table with at least 100k tuples. - - Example outputs from pgbench look like: - - number of clients: 4 - number of transactions per client: 100 - number of processed transactions: 400/400 - tps = 19.875015(including connections establishing) - tps = 20.098827(excluding connections establishing) - - Similar program called "JDBCBench" already exists, but it requires - Java that may not be available on every platform. Moreover some - people concerned about the overhead of Java that might lead - inaccurate results. So I decided to write in pure C, and named - it "pgbench." - -o features of pgbench - - - pgbench is written in C using libpq only. So it is very portable - and easy to install. - - - pgbench can simulate concurrent connections using asynchronous - capability of libpq. No threading is required. - -o How to install pgbench - - (1) Edit the first line in Makefile - - POSTGRESHOME = /usr/local/pgsql - - so that it points to the directory where PostgreSQL installed. - - (2) Run configure - - (3) Run make. You will see an executable file "pgbench" there. - -o How to use pgbench? - - (1) Initialize database by: - - pgbench -i <dbname> - - where <dbname> is the name of database. pgbench uses four tables - accounts, branches, history and tellers. These tables will be - destroyed. Be very carefully if you have tables having same - names. Default test data contains: - - table # of tuples - ------------------------- - branches 1 - tellers 10 - accounts 100000 - history 0 - - You can increase the number of tuples by using -s option. See - below. - - (2) Run the benchmark test - - pgbench <dbname> - - The default configuration is: - - number of clients: 1 - number of transactions per client: 10 - -o options - - pgbench has number of options. - - -h hostname - hostname where the backend is running. If this option - is omitted, pgbench will connect to the localhost via - Unix domain socket. - - -p port - the port number that the backend is accepting. default is - 5432. - - -c number_of_clients - Number of clients simulated. default is 1. - - -t number_of_transactions - Number of transactions each client runs. default is 10. - - -s scaling_factor - this should be used with -i (initialize) option. - number of tuples generated will be multiple of the - scaling factor. For example, -s 100 will imply 10M - (10,000,000) tuples in the accounts table. - default is 1. - - -n - No vacuuming and cleaning the history table prior the - test is performed. - - -v - Do vacuuming before testing. This will take some time. - Without both -n and -v pgbench will vacuum tellers and - branches tables only. - - -S - Perform select only transactions instead of TPC-B. - - -d - debug option. - - -o What is the "transaction" actually performed in pgbench? - - (1) begin; - - (2) update accounts set abalance = abalance + :delta where aid = :aid; - - (3) select abalance from accounts where aid = :aid; - - (4) update tellers set tbalance = tbalance + :delta where tid = :tid; - - (5) update branches set bbalance = bbalance + :delta where bid = :bid; - - (6) insert into history(tid,bid,aid,delta) values(:tid,:bid,:aid,:delta); - - (7) end; - -o License? - -Basically it is same as BSD license. See pgbench.c for more details. - -o History - -2000/1/15 pgbench-1.2 contributed to PostgreSQL - * Add -v option - -1999/09/29 pgbench-1.1 released - * Apply cygwin patches contributed by Yutaka Tanida - * More robust when backends die - * Add -S option (select only) - -1999/09/04 pgbench-1.0 released
\ No newline at end of file |