Tarsnap / kivaloo

Kivaloo is a collection of utilities which together form a data store associating keys of up to 255 bytes with values of up to 255 bytes.
http://www.tarsnap.com/kivaloo.html
Other
201 stars 17 forks source link

Kivaloo

Kivaloo (pronounced "kee-va-lieu") is a collection of utilities which together form a data store associating keys of up to 255 bytes with values of up to 255 bytes. It was designed to satisfy the needs of the Tarsnap online backup service for high-performance key-value storage.

At present, kivaloo comprises a block store (lbs) providing log-structured storage within a local filesystem; a key-value store (kvlds) which manages a log-structured B+Tree and services requests upon it from a single connection; and a request multiplexer (mux) which accepts multiple connections and routes requests and responses to and from a single "upstream" connection.

It is likely that other components will be added in the future to add more features (e.g., replication) or provide alternatives (e.g., other forms of underlying storage).

Features

Kivaloo has some features which distinguish it from most other "nosql" data stores:

Performance

On an EC2 c1.medium instance using ephemeral-disk storage, with a 2 kB B+Tree page size and 40-byte keys and 40-byte values:

For more details, see the kivaloo performance page.

Download

The following versions of kivaloo are available:

Version Release date SHA256 hash
kivaloo 1.2.0 2011-10-11 7c15d63493790b5480206ed25d4093a78bb271ce8198080a5601d6155e4eeccf
kivaloo 1.1.2 2011-09-26 6097a4635284f1d0cb238eca6ee067a933206d645eef38c5ab37fe545ce6cd36
kivaloo 1.1.1 2011-06-11 07230b52fe0d3a21bcf90622445177444b9b11ceec296e756627f68cc8d9a7af
kivaloo 1.1.0 2011-04-10 e70cc7bec054c049e0f9d34ab00023438abacecfe28886792e19ae888589ca77
kivaloo 1.0.1 2011-03-28 54145e602c16595e05133fb701270f2025f16bca04e45766f6635acb61e609e2
kivaloo 1.0.0 2011-03-28 46abf63e8b8b75f441a822c4e1a04083fec578f4e936fe51c8203a524c75d124

Mailing list

The kivaloo data store is discussed on the kivaloo@tarsnap.com mailing list.