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 D599B9DC8DB for ; Tue, 21 Mar 2006 07:23:49 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 46371-03 for ; Tue, 21 Mar 2006 07:23:51 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey- Received: from noel.decibel.org (noel.decibel.org [67.100.216.10]) by postgresql.org (Postfix) with ESMTP id 8043D9DC885 for ; Tue, 21 Mar 2006 07:23:47 -0400 (AST) Received: by noel.decibel.org (Postfix, from userid 1001) id 33F9056427; Tue, 21 Mar 2006 05:23:50 -0600 (CST) Received: (hashcash-sendmail, from uid 1001); Tue, 21 Mar 2006 05:23:49 -0600 Date: Tue, 21 Mar 2006 05:23:48 -0600 From: "Jim C. Nasby" To: Jaime Casanova Cc: "Craig A. James" , pgsql-performance@postgresql.org Subject: Re: update == delete + insert? Message-ID: <20060321112348.GE15742@pervasive.com> References: <7F10D26ECFA1FB458B89C5B4B0D72C2B088286@sesrv12.wirelesscar.com> <441EC652.1010807@modgraph-usa.com> <441F3187.90506@modgraph-usa.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Operating-System: FreeBSD 6.0-RELEASE-p4 amd64 X-Distributed: Join the Effort! http://www.distributed.net User-Agent: Mutt/1.5.11 X-Hashcash: 1:20:060321:systemguards@gmail.com::RY+b8N/vogzLOYKN:000000000000000 0000000000000000000000001S5U X-Hashcash: 1:20:060321:cjames@modgraph-usa.com::wpOll18hgTx/P36r:00000000000000 0000000000000000000000002fEF X-Hashcash: 1:20:060321:pgsql-performance@postgresql.org::vQhv1zce3tNkOt8d:00000 000000000000000000000000ApSh X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0.108 required=5 tests=[AWL=0.108] X-Spam-Score: 0.108 X-Spam-Level: X-Archive-Number: 200603/379 X-Sequence-Number: 17816 On Mon, Mar 20, 2006 at 08:38:15PM -0500, Jaime Casanova wrote: > On 3/20/06, Craig A. James wrote: > > Design 1: > > create table a ( > > id integer, > > frequently_updated integer); > > > > create table b( > > id integer, > > infrequently_updated_1 integer, > > infrequently_updated_2 integer, > > infrequently_updated_3 integer, > > ... etc. > > infrequently_updated_99 integer); > > > > Design 2: > > create table c( > > id integer, > > frequently_updated integer, > > infrequently_updated_1 integer, > > infrequently_updated_2 integer, > > infrequently_updated_3 integer, > > ... etc. > > infrequently_updated_99 integer); > design 1 is normalized and better > design 2 is denormalized and a bad approach no matter the RDBMS How is design 1 denormalized? > "What they (MySQL) lose in usability, they gain back in benchmarks, and that's > all that matters: getting the wrong answer really fast." > Randal L. Schwartz Where's that quote from? -- Jim C. Nasby, Sr. Engineering Consultant jnasby@pervasive.com Pervasive Software http://pervasive.com work: 512-231-6117 vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461