Moin Moin!
ich bin zur Zeit an einem Design eines Datenbankmodells (PostgreSQL) in welchem gefordert wird, das jeder geänderte Datensatz zum Zeitpunk X wieder hergestellt werden soll. Jetzt frage ich mich ob es nicht schon gute Konzepte für die Lösung solch eines Problems gibt. Denn kompletten Datensatz immer wieder neu abzuspeichern und mit einem Timestamp zu versehen schafft auf Dauer ja einen riesigen Overhead.
Wenn Du jederzeit auf alte Zustände zurückgreifen können willst, wird Dir außer Timestamps nichts anderes übrig bleiben.
Ein Rollback der gesamten Datenbank durch Einspielen eines alten Backups dauert verglichen damit ewig, Du verlierst alle aktuellen Daten seit dem letzten Backup, und so manche Anwendung könnte etwas irritiert sein, wenn Du ihr im laufenden Betrieb die Datenbank unter dem Hintern wegschießt.
Mit großen Datenmengen kann PostgreSQL ohne weiteres umgehen, das sollte Deine geringste Sorge sein. Sieh zu, dass Dein Schema mindestens die dritte Normalform hat, dann hast Du auch keinen Ärger mehr mit redundanten Daten.
Alexander
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".