Operating systems

cola is a C implementation of the COLA structure described in the paper "Cache Oblivious Streaming B-Trees" by Bender, Farach-Colton, et al. This algorithm is a drop-in replacement for B-Tree databases/indexes which performs faster on spinning disks than B-Trees do on SSD. It's asymptotically optimal in terms of data transfers to and from disk. For example, random key inserts are turned into linear sequential writes while maintaining the property which queries always require, at most, precisely log N blocks read sequentially (but not contiguously) from disk (or half that, on average).

KVZone is an evaluation tool for comparing performance of key-value stores. It provides various configuration parameters to match the expected application workload. It provides adapters for existing key value stores such as TokyoCabinet and simple databases such as sqlite3 and BerkeleyDB that can be used as key-value stores. New adapters can easily be written to evaluate other key-value stores.

Plasma implements the map/reduce framework on a compute cluster. It has its own distributed filesystem, PlasmaFS, which is transactional (ACID), reliable, and fast, and which provides a complete set of file operations. PlasmaFS can be accessed via an RPC protocol or via NFS (i.e., it is mountable). Additionally, there is a key/value database on top of PlasmaFS.