Die meisten Tabelen einer DB haben einen dynamischen bzw. sich ständig ändernden Inhalt. Um das Wachsen der Tabellen durch die nicht mehr benötigten Altlasten zu verhindern, sollen die Tabelle in regelmäßigen Abständen (Wartungszeiträume) aufgeräumt werden.
Dafür ein zusätzliches indexiertes Feld pro DB-Tabelle hinzuzufügen, z.B. namens "todelete" vom Typ "Datum" oder "Zeitstempel". Anwendungen, die auf die Daten zugreifen, sollen Datensätze, die irgendwann nicht mehr benötigt werden, durch das Eintragen des Löschdatums in das Feld "todelete" zum zukünftigen Löschen markieren. Falls das Verfallsdatum gleich beim Anlegen/Updaten des Satzes bekannt ist, ist es sinnvoll, das Feld "todelete" mitzufüllen. (Zwei zusätzliche Felder "toview" und "tohide" könnten auch den Zeitraum aufzeigen, in dem der Satz z.B. via API sichtbar sein sollte.)
Außerdem, ein spezielles Programm (z.B. Prüfprogramm genannt) soll in regelmäßigen Abständen alle Tabellen durchgehen und den Inhalt nach bestimmten Kriterien auf Aktualität auswerten. Damit sollen Datensätze aufgespürt werden, die durch Anwendungen nicht zum Löschen markiert werden konnten (egal aus welchem Grund).
Ein zweites Programm (z.B. Löschprogramm genannt) soll in regelmäßigen Abständen alle Tabellen durchgehen und alle Sätze, die das Datum im "todelete" kleiner als aktuelles Datum haben, löschen oder in einer anderen DB archivieren.
Die Nutzung eines solchen Verfahrens hat folgende Vor- und Nachteile:
Vorteile:
Nachteile:
Stand: 15.09.2009 - In Arbeit
— : Jürgen Kreick
EOF