BIGDIS: A File System Backed Key-Value Store for Large Values
Salvatore Sanfilippo (@antirez), creator and main developer of Redis, has shared a new project named BIGDIS
Bigdis is a weekend experiment about writing a Redis “clone” implementing a very strict subset of Redis commands (plain key-value basically) and using the file system as back end, that is: every key is represented as a file.
What is the goal of such a monster you may ask? Short answer: storing very large values.
Many kind of DBs are not well suited for storing large “files” as values. I mean things like images, or videos, and so forth. Still in the web-scale era it is very convenient to be able to access this kind of objects in a distributed fashion, with a networking layer, possibly with a protocol that contains already a large number of tested implementations.
While the goal is clearly stated in the above description, I’m not very sure in what scenarios is this new tool considering. For example, what are the advantages of using such a tool instead of say Amazon S3?
Another thing worth pointing is that BIGDIS seems to go the opposite direction of filesystem interfaces to NoSQL databases. BIGDIS proposes a simplified Redis API on top of the FS, while the later aim to provide the FS interface on top of NoSQL solutions.