Received: from maia.hub.org (maia-2.hub.org [200.46.204.251]) by mail.postgresql.org (Postfix) with ESMTP id 8FC091337B58 for ; Wed, 17 Nov 2010 19:28:13 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.251]) (amavisd-maia, port 10024) with ESMTP id 08037-06 for ; Wed, 17 Nov 2010 23:28:06 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from lo.gmane.org (lo.gmane.org [80.91.229.12]) by mail.postgresql.org (Postfix) with ESMTP id 126B81337B53 for ; Wed, 17 Nov 2010 19:28:06 -0400 (AST) Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1PIrQ1-0003D6-RJ for pgsql-performance@postgresql.org; Thu, 18 Nov 2010 00:28:01 +0100 Received: from cpe-188-129-101-174.dynamic.amis.hr ([188.129.101.174]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 18 Nov 2010 00:28:01 +0100 Received: from ivoras by cpe-188-129-101-174.dynamic.amis.hr with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 18 Nov 2010 00:28:01 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: pgsql-performance@postgresql.org From: Ivan Voras Subject: Re: How to achieve sustained disk performance of 1.25 GB write for 5 mins Date: Thu, 18 Nov 2010 00:27:35 +0100 Lines: 32 Message-ID: References: <35FABCF85D99464FB00BC5123DC2A70A0B7EFC38@s228130hz1ew09.apptix-01.savvis.net> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: cpe-188-129-101-174.dynamic.amis.hr User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.12) Gecko/20101102 Thunderbird/3.1.6 In-Reply-To: <35FABCF85D99464FB00BC5123DC2A70A0B7EFC38@s228130hz1ew09.apptix-01.savvis.net> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-1.91 tagged_above=-10 required=5 tests=BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01 X-Spam-Level: X-Archive-Number: 201011/308 X-Sequence-Number: 41332 On 11/17/10 22:11, Eric Comeau wrote: >> *) what kind of data do you expect to be writing out at this speed? >> > Large Video files ... our s/w is used to displace FTP. >> >> *) how many transactions per second will you expect to have? >> > Ideally 1 large file, but it may have to be multiple. We find that if we > send multiple files it just causes the disk to thrash more so we get > better throughput by sending one large file. > >> *) what is the architecture of the client? how many connections will >> be open to postgres writing? >> > Our s/w can do multiple streams, but I believe we get better performance > with 1 stream handling one large file, you could have 4 streams with 4 > files in flight, but the disk thrashes more... postgres is not be > writing the file data, our agent reports back to postgres stats on the > transfer rate being achieved ... postgres transactions is not the issue. > The client and server are written in C and use UDP (with our own error > correction) to achieve high network throughput as opposed to TCP. I hope you know what you are doing, there is a large list of tricks used by modern high performance FTP and web servers to get maximum performance from hardware and the operating system while minimizing CPU usage - and most of them don't work with UDP. Before you test with real hardware, try simply sending dummy data or /dev/null data (i.e. not from disks, not from file systems) and see how it goes.