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 C600A9DC820 for ; Wed, 21 Dec 2005 08:10:53 -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 67419-07 for ; Wed, 21 Dec 2005 08:10:55 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey- Received: from asmtp-out1.blueyonder.co.uk (asmtp-out1.blueyonder.co.uk [195.188.213.60]) by postgresql.org (Postfix) with ESMTP id ABC559DC804 for ; Wed, 21 Dec 2005 08:10:50 -0400 (AST) Received: from [82.44.78.202] (helo=Eve) by asmtp-out1.blueyonder.co.uk with esmtp (Exim 4.52) id 1Ep2o1-0006qD-3w; Wed, 21 Dec 2005 12:10:53 +0000 Reply-To: From: "Andy Ballingall" To: "'David Roussel'" Cc: Subject: Re: 2 phase commit: performance implications? Date: Wed, 21 Dec 2005 12:10:53 -0000 Organization: Areyoulocal Ltd. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Mailer: Microsoft Office Outlook, Build 11.0.5510 In-Reply-To: <43A81C8E.6010602@diroussel.xsmail.com> Thread-Index: AcYFdkuksrhPeCRjTSeM16Kaxa3smgAqgfaQ X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Message-Id: <20051221121050.ABC559DC804@postgresql.org> X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0.464 required=5 tests=[AWL=-0.464, MSGID_FROM_MTA_ID=0.927] X-Spam-Score: 0.464 X-Spam-Level: X-Archive-Number: 200512/534 X-Sequence-Number: 16355 >Why not just query adjacent databases, rather than copying the data = around? The reasons I didn't choose this way were: 1) I didn't think there's a way to write a query that can act on the = data in two Databases as though it was all in one, and I didn't want to get into = merging multiple database query results on the Application side. I'd rather just have all the needed data sitting in a single database so that I can = perform whatever query I like without complication. 2) Most database accesses are reads, and I didn't want a big network overhead for these, especially since I'm aiming for each database to be entirely RAM resident. >If you really wanted to do this, do you need 2pc?=A0 Once data has been uploaded to the database for region A, then asynchronously copy the data = to B, C, D and E later, using a queue.=A0=20 I've always assumed that my data needed to be consistent. I guess there = are some circumstances where it isn't really a problem, but each would need = to be carefully evaluated. The easy answer is to say 'yes, it must be consistent'. >If you try to commit to all at once, then if one fails, then none has = the data. Yes, I'd prefer things to be that way in any event. Regards, Andy