Skip site navigation (1) Skip section navigation (2)

How would you store read/unread topic status?

From: Mathieu Nebra <mateo21(at)siteduzero(dot)com>
To: pgsql-performance(at)postgresql(dot)org
Subject: How would you store read/unread topic status?
Date: 2009-06-23 11:12:39
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-performance
Hi all,

I'm running a quite large website which has its own forums. They are
currently heavily used and I'm getting performance issues. Most of them
are due to repeated UPDATE queries on a "flags" table.

This "flags" table has more or less the following fields:

UserID - TopicID - LastReadAnswerID

The flags table keeps track of every topic a member has visited and
remembers the last answer which was posted at this moment. It allows the
user to come back a few days after and immediately jump to the last
answer he has not read.

My problem is that everytime a user READS a topic, it UPDATES this flags
table to remember he has read it. This leads to multiple updates at the
same time on the same table, and an update can take a few seconds. This
is not acceptable for my users.

Question: what is the general rule of thumb here? How would you store
this information?

Thanks a lot in advance.


pgsql-performance by date

Next:From: Andres FreundDate: 2009-06-23 12:24:40
Subject: Re: How would you store read/unread topic status?
Previous:From: Laurent LabordeDate: 2009-06-23 08:55:49
Subject: Re: same query in high number of times

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group