views:

83

answers:

1

Is there any open-source document-oriented key-value map/reduce storage that:

  • is easily embeddable (Yes, it is possible to embed, let's say CouchDB, but it might be a pain to take the whole erlang machine onboard and I just don't feel good about it bounded on some port when my app is running)
  • does not keep the whole map in RAM (Hello, Redis!)
  • is good enough to be in production use
  • has a license different from GPL/LGPL/AGPL/whatever-else-GPL (Hey, MongoDB and Tokyo Cabinet!)

I don't really care about horizontal scalability, as I think about building a desktop application, but what will be nice to have is some sort of the “attachments” like in CouchDB, i.e. a way to store binary files attached to my documents.

+3  A: 

You should consider SQLite. There are already desktop applications that use it instead of managing files on disk.

http://www.sqlite.org/whentouse.html

http://www.sqlite.org/famous.html

I realize it's not usually included alongisde "document databases" like CouchDB, but it can easily be used that way. Just store your JSON doc inside a column instead.

And it has the best software license of all: Public Domain.

duluthian