1. A computer implemented method of operating a database management system, comprising: receiving, in a database encoder module, a signal representing a database access command; executing the database access command against a database; determining whether the database access command caused a change to the database; and changing at least one data record in a revision control archive module in a computer-readable storage medium in response to a determination that the database access command caused a change to the database, wherein changing at least one data record in a revision control archive module comprises: encoding data associated with the database access command for entry into a revision control archive module; and submitting the data to the revision control archive module; and committing a change to the database record only if the change is successfully recorded in the revision control archive module.