Distributed, content-addressable data storage

Bitcache is a distributed content-addressable storage (CAS) system. It provides repository storage for bitstreams (colloquially known as blobs) of any length, each uniquely identified and addressed by a digital fingerprint derived through a secure cryptographic hash algorithm.

Repository backends currently range from local in-memory and file system (plain file & GDBM) adapters to remote network connectors for Memcached, HTTP, SFTP, and Amazon S3. Additional adapters are in the works for FTP, TFTP, SQLite, MySQL and PostgreSQL.

Bitcache provides a command-line client (called bit) for managing and querying repositories, a standalone HTTP server (bitcached) for serving or proxying repositories using a simple web-native REST API, and a synchronization utility (bitsync) for replicating bitstreams between repositories.

Bitcache is written in Ruby and released under the open-source MIT License. Development, including the SVN repository, is hosted at RubyForge. Another Bitcache server implementation also exists for the popular PHP-based Drupal content management system.

Bitcache is inspired by Plan 9's Venti storage system and Linus Torvalds’s Git source control management system.