X-Original-To: pgsql-performance-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id B3FE611F6608 for ; Mon, 3 Apr 2006 15:31:18 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 53865-04 for ; Mon, 3 Apr 2006 15:31:17 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from davinci.ethosmedia.com (server227.ethosmedia.com [209.128.84.227]) by postgresql.org (Postfix) with ESMTP id 1E4F611F65D9 for ; Mon, 3 Apr 2006 15:31:15 -0300 (ADT) X-EthosMedia-Virus-Scanned: no infections found Received: from [64.81.245.111] (account josh@agliodbs.com HELO [192.168.1.27]) by davinci.ethosmedia.com (CommuniGate Pro SMTP 4.1.8) with ESMTP id 9204925; Mon, 03 Apr 2006 11:34:14 -0700 From: Josh Berkus Reply-To: josh@agliodbs.com Organization: Aglio Database Solutions To: pgsql-performance@postgresql.org Subject: Re: optimizing db for small table with tons of updates Date: Mon, 3 Apr 2006 11:29:42 -0700 User-Agent: KMail/1.8 Cc: Kenji Morishige References: <20060403182403.GA12257@juniper.net> In-Reply-To: <20060403182403.GA12257@juniper.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200604031129.42194.josh@agliodbs.com> X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0.081 required=5 tests=[AWL=0.081] X-Spam-Score: 0.081 X-Spam-Level: X-Archive-Number: 200604/25 X-Sequence-Number: 18109 Kenji, > We used to use MySQL for these tools and we never had any issues, but I > believe it is due to the transactional nature of Postgres that is adding > an overhead to this problem. =A0 You're correct. > Are there any table options that enables=20 > the table contents to be maintained in ram only or have delayed writes > for this particular table? No. That's not really the right solution anyway; if you want=20 non-transactional data, why not just use a flat file? Or Memcached? Possible solutions: 1) if the data is non-transactional, consider using pgmemcached. 2) if you want to maintain transactions, use a combination of autovacuum=20 and vacuum delay to do more-or-less continuous low-level vacuuming of the=20 table. Using Postgres 8.1 will help you to be able to manage this. =2D-=20 =2D-Josh Josh Berkus Aglio Database Solutions San Francisco