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)
pgsql-admin by date
|Next:||From: Joshua D. Drake||Date: 2007-05-31 16:23:01|
|Subject: Re: Deletes hurt|
|Previous:||From: Sipos Ferenc||Date: 2007-05-31 16:14:05|
|Subject: postgresql recovery (PANIC: btree_split_redo: lost left sibling)|