lsm_tree: An (experimental/test/POC) Riak/KV backend using SQLite4's Log-Structured Merge Tree
C Erlang Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
c_src
include
src
test
.gitignore
LICENSE
Makefile
README.md
enable-lsm_tree
rebar.config

README.md

The SQLite4 LSM Tree Backend for Riak/KV

This storage engine can function as an alternative backend for Basho's Riak/KV. See also: SQLite4

Configuration options

Put these values in your app.config in the lsm_tree section

 {lsm_tree, [
          {data_root, "./data/lsm_tree"}
         ]},

NOT FOR PRODUCTION USE in Riak/KV clusters

This is an experimental backend, it should not be used for production deployments. The goal is to understand the operational features of the log-structured merge tree written for use in SQLite version 4, nothing else.

How to deploy LSM Tree as a Riak/KV backend

Deploy lsm_tree into a Riak devrel cluster using the enable-lsm_tree script. Clone the riak repo, change your working directory to it, and then execute the enable-lsm_tree script. It adds lsm_tree as a dependency, runs make all devrel, and then modifies the configuration settings of the resulting dev nodes to use the lsm_tree storage backend.

  1. git clone git://github.com/basho/riak.git
  2. mkdir riak/deps
  3. cd riak/deps
  4. git clone git://github.com/basho-labs/riak_kv_lsm_tree_backend.git
  5. cd ..
  6. ./deps/riak_kv_lsm_tree_backend/enable-lsm_tree