Hello, Bitcask!

Justin Sheehy justin at basho.com
Wed May 5 11:46:45 EDT 2010

Riak Users,

You might have noticed that we released a new local key/value store
recently: http://blog.basho.com/2010/04/27/hello,-bitcask/

As of just now, it is available as a storage engine ("backend") in the
tip of the Riak repository.

You can use it like any other backend just by setting the
storage_backend application variable in the riak_kv application to
riak_kv_bitcask_backend (in your "app.config") on a fresh node so that
it will use Bitcask for storage.

There is a new application in app.config, "bitcask", for more detailed
configuration of bitcask behavior.  Some of the variables you can set
in there are:

data_root: string (required) - the directory for bitcask to use for
storage and metadata

merge_strategy: {hours, N} - perform a data file merge every N hours

sync_strategy: how to manage syncing of data files being written.  choices:
   none   (default)        - let the O/S decide
   o_sync                   - use the O_SYNC flag to sync each write
   {seconds, N}           - call bitcask:sync/1 every N seconds

A couple of things aren't done yet, including more proactive
generation of hintfiles, faster startup time, smarter merge
strategies, more extensive testing on more platforms, documentation on
usage, and more.  We are not yet recommending this as a primary
production backend, but we expect to very soon.  Your feedback is


p.s. -- it's not slow.

More information about the riak-users mailing list