Re: Benchmarking tools, methods

From: Greg Smith <greg(at)2ndQuadrant(dot)com>
To: pgsql-performance(at)postgresql(dot)org
Subject: Re: Benchmarking tools, methods
Date: 2011-11-19 16:21:43
Message-ID: 4EC7D797.8010300@2ndQuadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On 11/18/2011 04:55 AM, CSS wrote:
> I'm also curious about benchmarking using my own data. I tried something long ago that at least gave the illusion of working, but didn't seem quite right to me. I enabled basic query logging on one of our busier servers, dumped the db, and let it run for 24 hours. That gave me the normal random data from users throughout the day as well as our batch jobs that run overnight. I had to grep out and reformat the actual queries from the logfile, but that was not difficult. I then loaded the dump into the test server and basically fed the saved queries into it and timed the result. I also hacked together a script to sample cpu and disk stats every 2S and had that feeding into an rrd database so I could see how "busy" things were.
>
> In theory, this sounded good (to me), but I'm not sure I trust the results. Any suggestions on the general concept? Is it sound? Is there a better way to do it? I really like the idea of using (our) real data.
>

The thing that's hard to do here is replay the activity with the right
timing. Some benchmarks, such as pgbench, will hit the database as fast
as it will process work. That's not realistic. You really need to
consider that real applications have pauses in them, and worry about
that both in playback speed and in results analysis.

See http://wiki.postgresql.org/wiki/Statement_Playback for some more
info on this.

> ps - considering the new PostgreSQL Performance book that Packt has, any strong feelings about that one way or the other? Does it go very far beyond what's on the wiki?
>

Pages 21 through 97 are about general benchmarking and hardware setup;
189 through 208 cover just pgbench. There's almost no overlap between
those sections and the wiki, which is mainly focused on PostgreSQL usage
issues. Unless you're much smarter than me, you can expect to spent
months to years reinventing wheels described there before reaching new
ground in the areas it covers. From the questions you've been asking,
you may not find as much about ZFS tuning and SSDs as you'd like though.

http://www.2ndquadrant.com/en/talks/ has some updated material about
things discovered since the book was published. The "Bottom-Up Database
Benchmarking" there shows the tests I'm running nowadays, which have
evolved a bit in the last year.

--
Greg Smith 2ndQuadrant US greg(at)2ndQuadrant(dot)com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.us

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Jeremy Harris 2011-11-20 13:56:14 Re: external sort performance
Previous Message Tom Lane 2011-11-19 05:39:20 Re: probably cause (and fix) for floating-point assist faults on itanium