¿Cuáles son algunas estrategias con las que la gente ha tenido éxito para mantener un historial de cambios para los datos en una base de datos bastante compleja? Una de las aplicaciones que uso y desarrollo con frecuencia podría beneficiarse realmente de una forma más completa de seguimiento de cómo los registros han cambiado con el tiempo. Por ejemplo, en este momento los registros pueden tener una cantidad de campos de fecha y hora y campos de usuario modificados, pero actualmente no tenemos un esquema para registrar múltiples cambios, por ejemplo, si una operación se revierte. En un mundo ideal, sería posible reconstruir el registro como lo fue después de cada parada, etc.¿Estrategia efectiva para dejar una pista de auditoría/historial de cambios para aplicaciones DB?
algo de información sobre el DB:
- Necesita tener la capacidad de crecer por miles de registros por semana
- 50-60 tablas
- principal Revisioned tablas pueden tener varios millones de registros de cada
- cantidad razonable de claves externas e índices establecer
- Usando PostgreSQL 8.x
Considere el uso de una [base de datos temporal] (http://en.wikipedia.org/wiki/Temporal_database "entrada de Wikipedia"). –