FoundationDB: A Reliable Key-Value Store with ACID Compliance
KubeCon + CloudNativeCon sponsored this podcast.
The open source FoundationDB data store “falls in the genre of key-value stores or key-value databases so to speak,” said Snowflake Computing‘s Ashish Motivala. “And of the differences between FoundationDB and the plethora of other databases value stores out there is that it provides ACID compliance, which means it provides all transactional support unlike a lot of other databases,” Motivala said. “The other thing that it provides is a level of reliability that I haven’t seen in other databases in the past. And these two things really, for me, define what FoundationDB is.”
FoundationDB also serves as single key-value store “that enables you to write logic in your code that interfaces with a store transactionally” Pang said. “It’s just one data store to rule all in my mind,” Pang said.
Alex Williams, founder and editor-in-chief of The New Stack, recently spoke with Snowflake’s Motivala and Clement Pang from VMware for this newest episode of The New Stack Makers podcast. Both are also committee members for the FoundationDB Summit. They described FoundationDB’s history and new improvements it offers for organizations seeking to scale their databases in multi-cloud environments and across different geographical sectors by using the open source alternative.
The underlying benefit of FoundationDB is how it can serve as a universal underlayer for different data models. Pang described when Wavefront was created in 2013 how he was at first “very skeptical because I think, claiming that this single data store can be just the foundation layer…that enables you to just build all sorts of storage needs upon was just too great of a promise.”
However, Pang said his skepticism about FoundationDB quickly abated when he saw how with a single API, developers could use it on their laptops and then port it to production “having the same exact perimeter API connection, all configurations and what not.”
“It just takes away a lot of the complexity of building an application and certainly, when we’re starting a company, we don’t want to be just putting in a whole bunch of technology for technology’s sake,” Pang said. “So that’s kind of how our genesis with FoundationDB began.”
When Snowflake was founded to offer analytics databases and analytics databases on the cloud, Motivala described a need for databases to be able to store all of the information that organizations could not otherwise store in their own analytics database, Motivala said. “We very quickly realized that it was very hard to develop in a startup that’s fast-pace and moving really quickly to where you’re adding new objects and new entities all the time to keep MySQL up and running and make modifications through it live in the system,” Motivala said.
After testing Snowflake’s databases with FoundationDB, Motivala said he and his team quickly discovered FoundationDB met their at-scale and complex database demands. “Lo and behold, ever since then, we’re now running anywhere thousand instances of FoundationDB,” Motivala said.
FoundationDB is also being developed to continue to meet the demands of microservices and Kubernetes architectures that are increasingly operated in multicloud environments.
“When choosing FoundationDB, we didn’t choose something that is native to a particular cloud vendor, which means that there’s a great lock-in usually… And what FDB instead gave us is this ability to just to run the data layer whether it’s on AWS or there’s even on-prem or in a different cloud or whether you orchestrate it with on bare metal machines or use it in Kubernetes,” Pang said. “You know all of that is open and is free for developers and operations folks to just determine.”
Recently released FoundationDB 6.0.15’s key features include an architectural shift in the approach to cross-region replication, which FoundationDB says improves how it can be managed as a production system, better TLS improved for operational flexibility, faster failure recovery.
“A lot of work was done to make sure it’s possible to actually have a globally consistent data store with application topologies that are including asynchronous server application technologies and whatnot,” Pang said.
Taking a step back, Pang described how FoundationDB can offer opportunities for startups seeking advanced transactional database capabilities unavailable in the recent past. “This kind of complexity and deployment strategies [it can offer were] just impossible in the past for any startup to contemplate,” Pang said. “I don’t think there’s anything on the market that even remotely looks like that.”
In this Edition:
- 1:52: A definition of FoundationDB.
- 5:34: FoundationDB at its core can scale once across a distributed infrastructure, is that correct?
- 10:52: Your thoughts on FoundationDB and the different fits of distributed architectures such as AWS and Kubernetes?
- 14:57: Exploring the history of FoundationDB.
- 22:18: What have you been doing over the past year?
- 27:27: What will be the things you really want to figure out for the vision for the organization?
Feature image via Pixabay.