Provides an API for the FoundationDB transactional key/value store. Clients operating on a Database should, in most cases, use the run(Function) or the runAsync(Function) constructs. These two functions (and their two derivations) implement a proper retry loop around the work that needs to get done and, in the case of Database, assure that Transaction.commit() has returned successfully before itself returning. If you are not able to use these functions for some reason please closely read and understand the other developer documentation on FoundationDB transactions.