Keep a history of transactions for easy rollback Is there a database (either SQL or NoSQL) which allows you to keep a history or log of all past transactions so that you can easily rollback to any given point in time (similar to how git manages a source repository)? Taking a checkpoint after every transaction probably will do the same job, but keeping a history looks more efficient.
SQL Server with database in FULL recovery model permits you to do a point-in-time restore.

There is no need in "Taking a checkpoint after every transaction" because of write ahead logging.

To know more about it you can read the followin article: SQL Server point in time restore


  Overview 
  
  The RESTORE ... WITH STOPAT option allows you to restore your
  database to a point in time.  This gives you the ability to restore a
  database prior to an event that occurred that was detrimental to your
  database.  In order for this option to work, the database needs to be
  either in the FULL or Bulk-Logged recovery model and you need to be
  doing transaction log backups.


And here is the official documentation:
Restore a SQL Server Database to a Point in Time (Full Recovery Model)