FoundationDB

FDB over other databases for small to large sites


#1

As a web developer, I know Postgres, MongoDB, MySQL/Maria, Redis, RockDB are among the popular brand in databases world. Is FoundationDB in the same category as those popular ones if that can be a full replacement?

What does “layers” I have read in the discussions mean which I have not heard such term for years.

What side effect do we get if I could ran FoundationDB on VPS with 1GB memory (below the recommended of 4GB)? Could I use SSD storage as a virtual memory?


(Bhaskar Muppana) #2

FoundationDB is a distributed transactional key value store. It exposes transactions across complete key space. API provided on FoundationDB KV Store is low level and minimalistic - you can do set, get, getRange in transactions. This gives lot of flexibility to build different data models on top, which are called layers.

Based on the implementation of layer, FoundationDB can match features of some of the databases you mentioned above. Some of the layers being discussed in the forums now

You can split tasks of all the databases you mentioned above into two parts

  • Data model (SQL, Document, Column families, KV Store etc)
  • Scalability, some or all of ACID guarantees

With the way FoundationDB is designed you can depend on FoundationDB core for Scalability and ACID guarantees, then create/use a layer of your liking for the data model. @wwilson did better job than me putting the same in words here


(Amirouche) #3

FoundationDB API is similar to rocksdb but the storage is distributed. If you used in the past RocksDB you can use FoundationDB in a similar way.