Received: from maia.hub.org (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id 09978633156 for ; Thu, 25 Feb 2010 18:48:26 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 79812-04 for ; Thu, 25 Feb 2010 22:48:15 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.187]) by mail.postgresql.org (Postfix) with ESMTP id 6031F6322EA for ; Thu, 25 Feb 2010 18:48:15 -0400 (AST) Received: from [192.168.0.105] (pool-96-244-14-10.bltmmd.fios.verizon.net [96.244.14.10]) by mrelayeu.kundenserver.de (node=mreu1) with ESMTP (Nemesis) id 0MDl62-1NySoM1Qn0-00HHzt; Thu, 25 Feb 2010 23:48:12 +0100 Message-ID: <4B86FE2A.1030205@2ndquadrant.com> Date: Thu, 25 Feb 2010 17:48:10 -0500 From: Greg Smith User-Agent: Thunderbird 2.0.0.23 (X11/20090817) MIME-Version: 1.0 To: Yu-Ju Hong CC: pgsql-performance@postgresql.org Subject: Re: dbt2 performance References: <516a4a601002251323udcc2b41tf5a09b968bef3a7c@mail.gmail.com> In-Reply-To: <516a4a601002251323udcc2b41tf5a09b968bef3a7c@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V01U2FsdGVkX18Ypf16OVK9bq1O95P2NEg7i3XMbyOYGcGC3CD 65YrTifKjrAibQ5GE9aCBdPZBsjTxhXGOyP2ZWMcUKk/9zjBCJ 06pbPNP3YhRHUO1uR52ctabJ7iN4Yog X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.599 tagged_above=-10 required=5 tests=BAYES_00=-2.599 X-Spam-Level: X-Archive-Number: 201002/358 X-Sequence-Number: 37779 Yu-Ju Hong wrote: > 2. Moreover, the disk utilization was high and the "await" time from > iostat is around 500 ms. Could disk I/O limit the overall throughput? > The server has 2 SATA disks, one for system and postgresql and the > other is dedicated to logging (pg_xlog). As far as I understand, > modern database systems should be CPU-bound rather than I/O-bound, is > it because I did not perform adequate performance tuning? dbt2 is almost exclusively disk I/O bound once the data set gets big enough. There are some applications where most of the data fits in RAM and therefore CPU performance is the limiter. dbt2 is exactly the opposite of such an application though, and the idea that "modern database systems should be CPU bound" is not really true at all. That's only the case if the data you're operating on fits in RAM. Otherwise, databases are just as I/O bound as they've always been. Main thing that's changed is there's a lot more RAM in systems nowadays. By the way: a large increase in checkpoint_segments is the first thing you should do. If you check the database logs, they're probably filled with complaints about it being too low. 32 would be a useful starting value, going much higher for a test that's only 10 minutes long is probably cheating. -- Greg Smith 2ndQuadrant US Baltimore, MD PostgreSQL Training, Services and Support greg@2ndQuadrant.com www.2ndQuadrant.us