Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

MacRumors

macrumors bot
Original poster
Apr 12, 2001
68,352
39,187



Apple-owned company FoundationDB today announced the open source release of the FoundationDB Record Layer, which it says offers up relational database semantics on top of FoundationDB with schema management, indexing facilities, and a "rich set of query capabilities.

Apple uses the Record Layer to support applications and services for hundreds of millions of users, and combined with FoundationDB, it forms the backbone of Apple's CloudKit service.

foundationdb-1-800x108.jpg
Built on top of FoundationDB, the Record Layer inherits FoundationDB's strong ACID semantics, reliability, and performance in a distributed setting. The Record Layer also uses FoundationDB's transactional semantics to provide features similar to a traditional relational database, but in a distributed setting. For example, the Record Layer's secondary indexes are maintained transactionally, so they're always up-to-date with the latest changes to the data. Transactions reduce the number of bugs in application code and greatly simplify application development.
FoundationDB also wrote a full paper describing how the Record Layer was built to run at a massive scale and just how CloudKit uses it. That paper is available in PDF form here.

In a nutshell, CloudKit uses the Record Layer to host billions of independent databases, and its feature set lets CloudKit provide rich APIs and strong semantics with improved scalability and reduced maintenance.

FoundationDB has also written a getting started guide designed to walk users through creating an application that uses the Record Layer, along with a detailed overview and a forum, all of which is available via the open source announcement.

Apple purchased FoundationDB back in 2015, and made the FoundationDB core open source in April 2018.

Article Link: Apple-Owned Company FoundationDB Open Sources FoundationDB Record Layer Used by CloudKit
 
Nice thing about FoundationDB is it works on OS X 10.7 or higher or Ubuntu 12 or higher. Great for my older hardware boxes.
 
I wish I had a project that could use this. I remember being bummed when Apple bought them and they closed up shop...now that it's back I've been trying to use it. Now this'll move it up the priority list.
 
The PDF has a very interesting description of how CloudKit runs on the Record Layer on top of FoundationDB. Because Apple stores a logical database for each combination of user and application, FoundationDB is managing billions of databases, each with its own schema, metadata, and indexes. A lot goes on behind the scenes when you sync your data!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.