Re: PostgreSQL as a local in-memory cache

From: "Pierre C" <lists(at)peufeu(dot)com>
To: "Greg Smith" <greg(at)2ndquadrant(dot)com>, "jgardner(at)jonathangardner(dot)net" <jgardner(at)jonathangardner(dot)net>
Cc: pgsql-performance(at)postgresql(dot)org
Subject: Re: PostgreSQL as a local in-memory cache
Date: 2010-06-16 11:22:50
Message-ID: op.ved4kcv3eorkce@apollo13
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance


FYI I've tweaked this program a bit :

import psycopg2
from time import time
conn = psycopg2.connect(database='peufeu')
cursor = conn.cursor()
cursor.execute("CREATE TEMPORARY TABLE test (data int not null)")
conn.commit()
cursor.execute("PREPARE ins AS INSERT INTO test VALUES ($1)")
cursor.execute("PREPARE sel AS SELECT 1")
conn.commit()
start = time()
tx = 0
N = 100
d = 0
while d < 10:
for n in xrange( N ):
cursor.execute("EXECUTE ins(%s)", (tx,));
#~ conn.commit()
#~ cursor.execute("EXECUTE sel" );
conn.commit()
d = time() - start
tx += N
print "result : %d tps" % (tx / d)
cursor.execute("DROP TABLE test");
conn.commit();

Results (Core 2 quad, ubuntu 10.04 64 bits) :

SELECT 1 : 21000 queries/s (I'd say 50 us per query isn't bad !)
INSERT with commit every 100 inserts : 17800 insets/s
INSERT with commit every INSERT : 7650 tps

fsync is on but not synchronous_commit.

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Juan Pablo Sandoval Rivera 2010-06-16 13:45:57 Confirm calculus
Previous Message David Jarvis 2010-06-16 08:48:27 Re: Analysis Function