Received: from localhost (maia-2.hub.org [200.46.204.187]) by postgresql.org (Postfix) with ESMTP id 57D769FB8E2 for ; Wed, 4 Apr 2007 09:47:06 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.187]) (amavisd-maia, port 10024) with ESMTP id 78953-01-4 for ; Wed, 4 Apr 2007 09:46:51 -0300 (ADT) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.4 Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.180]) by postgresql.org (Postfix) with ESMTP id 977399FB9A9 for ; Wed, 4 Apr 2007 09:46:55 -0300 (ADT) Received: by py-out-1112.google.com with SMTP id a73so63553pye for ; Wed, 04 Apr 2007 05:46:54 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=YpLu9X+dO9m36iMshQDX07/U66tDg9iIBtr9lNl6OySnGj7shpOd2QwaBl2jelntC+x/FH7mqYQaLbU6hg4DyeDWvLymslhWo2W/KTQ2cMM0P+a4jPyoJQFxdXIvvqWiFElUS1eS5kxQiepIMkbV4oYkOghGzKCvhRnlOtXaXjo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=FbVZ6sk/KdFtO4o9rgUZ8G0HnDoBXm9awQ6jS7qcBdxizPSH8pHFfTnheV1S9wdsHRX55KIWvmpw50nb84xHh4IkqopKS6Dm8uskPTe1ylYMvFBon0Vt3Y7SeWUm8/6ciRfuXl8qAKcIodZAHvcYxIgUEBp9yLsmJ85It+ev8+w= Received: by 10.35.43.10 with SMTP id v10mr1103665pyj.1175690814363; Wed, 04 Apr 2007 05:46:54 -0700 (PDT) Received: by 10.35.110.1 with HTTP; Wed, 4 Apr 2007 05:46:54 -0700 (PDT) Message-ID: <5482c80a0704040546q7a27e2cdk8ed8307f0ebb39f8@mail.gmail.com> Date: Wed, 4 Apr 2007 14:46:54 +0200 From: Dimitri To: pgsql-performance@postgresql.org Subject: Equivalents in PostgreSQL of MySQL's "ENGINE=MEMORY" "MAX_ROWS=1000" In-Reply-To: <5482c80a0704040134q760dc58fp6eda892ab70eb738@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <4612A421.4060808@andromeiberica.com> <4612AD87.1040406@netsyncro.com> <200704031300.46013@hal.medialogik.com> <5482c80a0704040134q760dc58fp6eda892ab70eb738@mail.gmail.com> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200704/60 X-Sequence-Number: 23937 Probably another helpful solution may be to implement: ALTER TABLE LOGGING OFF/ON; just to disable/enable WAL? First it may help in all cases of intensive data load while you slow down other sessions with increasing WAL activity. Then you have a way to implement MEMORY-like tables on RAM disk tablespace (well, you still need to take care to drop them auto-manually :)) However, if we speak about performance of MEMORY table - it should be much better in Tom's solution with big temp buffers rather RAM disk... The strong point in implementation of MEMORY table is it *knows* it sits in RAM! and it changes completely all I/O kind logic... BTW, before NDB was bough by MySQL we done a benchmark to rich a highest possible TPS numbers with it. We got 1.500.000 TPS(!) (yes, one million and half per second!) knowing all current TPC records are measured in thousands of transactions per minute - you see impact... And of course for my education I tried to do the same with other database vendors running only SELECT queries and placing tablespaces on RAM disk... After trying all possible combinations I was still *very* far :)) MEMORY databases is something like a parallel world, very interesting, but very different :)) Rgds, -Dimitri On 4/3/07, A.M. wrote: > > On Apr 3, 2007, at 16:00 , Alan Hodgson wrote: > > > On Tuesday 03 April 2007 12:47, "A.M." > > wrote: > >> On Apr 3, 2007, at 15:39 , C. Bergstr=F6m wrote: > >> I would like to use transactional semantics over tables that can > >> disappear whenever the server fails. memcached does not offer that. > > > > How would temporary tables? > > The only difference between temporary tables and standard tables is > the WAL. Global temporary tables would be accessible by all sessions > and would be truncated on postmaster start. For a further potential > speed boost, global temp tables could be put in a ramdisk tablespace. > > Well, that's at least how I envision them. > > Cheers, > M > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match >