Thread: current transaction in productive database

From:
"ml@bortal.de"
Date:

Hello List,

is there a way to find out, how many transactions my currenc productive
database is doing?

I know know how much i an offer with my new database and hardware, but i
would also like to know what i actually _need_ on my current productive
system.

Is there a way to find this out?

Cheers,
Mario

From:
Jeff
Date:

On Mar 20, 2009, at 5:26 AM,  wrote:

> Hello List,
>
> is there a way to find out, how many transactions my currenc
> productive database is doing?
>
> I know know how much i an offer with my new database and hardware,
> but i would also like to know what i actually _need_ on my current
> productive system.
>
> Is there a way to find this out?

Are you looking to see how many transactions per second or more how
many transactions concurrently at a given time?

For the former you can use pgspy (its on pgfoundry) to get an idea of
queries per second coming in.

For the latter, just select * from pg_stat_activity where
current_query <> '<IDLE>';

--
Jeff Trout <>
http://www.stuarthamm.net/
http://www.dellsmartexitin.com/




From:
Greg Smith
Date:

On Fri, 20 Mar 2009,  wrote:

> is there a way to find out, how many transactions my currenc productive
> database is doing?

What you probably want here is not a true transaction count, which might
include thing that don't matter much for scaling purposes, but instead to
count things happening that involve a database change.  You can find out
totals for that broken down by table using this:

   select * from pg_stat_user_tables

See http://www.postgresql.org/docs/8.3/static/monitoring-stats.html for
more details.  You'll want to sum the totals for inserts, updates, and
deletes to get all the normal transcations.

That will be a total since the statistics were last reset.  If you want a
snapshot for a period, you can either sample at the beginning and end and
subtract, or you can use:

   select pg_stat_reset();

To reset everything, wait for some period, and then look at the totals.
You may not want to do that immediately though.  The totals since the
database were brought up that you'll find in the statistics views can be
interesting to look at for some historical perspective, so you should
probably save any of those that look interesting before you reset
anything.

--
* Greg Smith  http://www.gregsmith.com Baltimore, MD

From:
Euler Taveira de Oliveira
Date:

 escreveu:
> is there a way to find out, how many transactions my currenc productive
> database is doing?
>
If you're looking for number of transactions then you can query the catalogs as:

$ export myq="select sum(xact_commit+xact_rollback) from pg_stat_database"
$ psql -U postgres -c "$myq" && sleep 60 && psql -U postgres -c "$myq"
    sum
-----------
 178992891
(1 row)

    sum
-----------
 178996065
(1 row)

$ bc -q
scale=3
(178996065-178992891)/60
52.900

Depending on your workload pattern, it's recommended to increase the sleep time.


--
  Euler Taveira de Oliveira
  http://www.timbira.com/