Received: from localhost (maia-1.hub.org [200.46.204.191]) by postgresql.org (Postfix) with ESMTP id 98C2C9FB899 for ; Fri, 22 Jun 2007 07:45:17 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.191]) (amavisd-maia, port 10024) with ESMTP id 97219-09 for ; Fri, 22 Jun 2007 07:45:11 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from h07.llord.com (unknown [195.140.142.194]) by postgresql.org (Postfix) with ESMTP id 4BE039FB868 for ; Fri, 22 Jun 2007 07:45:11 -0300 (ADT) Received: from par69-8-88-161-102-87.fbx.proxad.net ([88.161.102.87] helo=apollo13) by h07.llord.com with esmtpa (Exim 4.66) (envelope-from ) id 1I1gdG-00054A-OA; Fri, 22 Jun 2007 12:44:50 +0200 Date: Fri, 22 Jun 2007 12:45:13 +0200 To: "Harald Armin Massa" , "Rainer Bauer" Subject: Re: Data transfer very slow when connected via DSL From: PFC Cc: pgsql-performance@postgresql.org Content-Type: text/plain; format=flowed; delsp=yes; charset=utf-8 MIME-Version: 1.0 References: <7be3f35d0706210801p732f2e73o147e3cbc0dc98153@mail.gmail.com> <7be3f35d0706220324n1b8a41e1q7d235970044da689@mail.gmail.com> Content-Transfer-Encoding: 7bit Message-ID: In-Reply-To: <7be3f35d0706220324n1b8a41e1q7d235970044da689@mail.gmail.com> User-Agent: Opera Mail/9.21 (Linux) X-PopBeforeSMTPSenders: junk@peufeu.com, lists@peufeu.com, peufeu@peufeu.com, pfcaillaud@peufeu.com X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - h07.llord.com X-AntiAbuse: Original Domain - postgresql.org X-AntiAbuse: Originator/Caller UID/GID - [0 0] / [47 12] X-AntiAbuse: Sender Address Domain - peufeu.com X-Source: X-Source-Args: X-Source-Dir: X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=2.494 tagged_above=0 required=5 tests=AWL=-0.282, BAYES_50=0.001, RCVD_IN_NJABL_SPAM=2.775 X-Spam-Level: ** X-Archive-Number: 200706/522 X-Sequence-Number: 25555 >> I did not find a solution so far; and for bulk data transfers I now >> >programmed a workaround. >> >> But that is surely based on some component installed on the server, >> isn't >> it? >> > > Correct. I use a pyro-remote server. On request this remote server copies > the relevant rows into a temporary table, uses a copy_to Call to push > them > into a StringIO-Objekt (that's Pythons version of "In Memory File"), > serializes that StringIO-Objekt, does a bz2-compression and transfers the > whole block via VPN. > > I read on in this thread, and I scheduled to check on psycopg2 and what > it is doing with cursors. What about a SSH tunnel using data compression ? If you fetch all rows from a query in one go, would it be fast ? Also, PG can now COPY from a query, so you don't really need the temp table...