FoundationDB is designed to provide “the power of ACID transactions in a distributed database.” It features a multi-model data store, a distributed architecture for scaling out and handling faults, and support for heavy loads.
The database was first launched in 2010 with the idea of focusing on the “core” of the solution and extending it through layers. The core of the database is its key-value store and the layers are new features that have been added to support data and handle access patterns.
“FoundationDB is a distributed datastore, designed from the ground up to be deployed on clusters of commodity hardware. These clusters scale well as you add machines, automatically heal from hardware failures, and have a simple API. The key-value store supports fully global, cross-row ACID transactions. That’s the highest level of data consistency possible. What does this mean for you? Strong consistency makes your application code simpler, your data models more efficient, and your failure modes less surprising,” the FoundationDB team wrote in a blog.
Apple believes FoundationDB has the potential to spur the next-generation of distributed databases, and hopes the number and quality of layers will advance and improve rapidly now that it is open source.
“By open sourcing FoundationDB, our goal is to build an open community. All major development will be done in the open. We’ve outlined a design document process to ensure that this work is done transparently and with community input. We’ve taken early steps to outline project governance to provide a basic structure that will enable members of the community who actively contribute to have a greater voice in the project decision-making,” the team wrote.
In addition, Apple has adopted a code of conduct to outline best practices and unaccepted behavior.