Estratégia eficaz para deixar uma trilha de auditoria / histórico de alterações para aplicativos de banco de dados?
Quais são algumas das estratégias com as quais as pessoas obtiveram sucesso para manter um histórico de alterações de dados em um banco de dados bastante complexo. Um dos aplicativos para os quais eu frequentemente uso e desenvolvo poderia se beneficiar de uma maneira mais abrangente de rastrear como os registros foram alterados ao longo do tempo. Por exemplo, no momento, os registros podem ter vários carimbos de data e hora e campos de usuário modificados, mas atualmente não temos um esquema para registrar várias alterações, por exemplo, se uma operação for revertida. Em um mundo perfeito, seria possível reconstruir o registro como era após cada salvamento, etc.
Algumas informações sobre o banco de dados:
Precisa ter capacidade para crescer milhares de registros por semana50-60 TablesAs principais tabelas revisadas podem ter vários milhões de registros cadaQuantidade razoável de chaves estrangeiras e índices definidosUsando o PostgreSQL 8.x