Deletes hurt

From: Jim Nasby <decibel(at)decibel(dot)org>
To: "pgsql-admin(at)postgresql(dot)org Admin" <pgsql-admin(at)postgresql(dot)org>
Subject: Deletes hurt
Date: 2007-05-31 16:14:22
Message-ID: 734907A8-F30D-4924-8C97-30D2898CA43C@decibel.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

I'm currently doing EnterpriseDB training at a well-known
entertainment company. I found out something yesterday that I thought
the community would find interesting...

In their game (MMORPG) databases, they have fields on all their
tables that indicate whether a record has been deleted or not. I've
seen this done before, typically for data retention reasons. But they
had a daily process that went through each night and physically
deleted the records that had been marked as deleted.

The reason they weren't actually deleting rows real-time is because
it cost to much in Oracle to do so. My guess is it's because Oracle
has to copy the entire deleted row to the undo log as part of the
delete, which would be pretty costly.
--
Jim Nasby jim(at)nasby(dot)net
EnterpriseDB http://enterprisedb.com 512.569.9461 (cell)

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Joshua D. Drake 2007-05-31 16:23:01 Re: Deletes hurt
Previous Message Sipos Ferenc 2007-05-31 16:14:05 postgresql recovery (PANIC: btree_split_redo: lost left sibling)