You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
rust-rocksdb/README.md

1.3 KiB

rust-rocksdb

running

Cargo.toml
[dependencies.rocksdb]
git = "https://github.com/spacejam/rust-rocksdb"

RocksDB 3.8.1 will be pulled in and compiled automatically.

Code
extern crate rocksdb;
use rocksdb::Rocksdb;

fn main() {
  match Rocksdb::open_default("/path/for/rocksdb/storage") {
    Ok(db) => {
      db.put(b"my key", b"my value");

      db.get(b"my key").map( |value| {
        match value.to_utf8() {
          Some(v) =>
            println!("retrieved utf8 value {}", v),
          None =>
            println!("did not read valid utf-8 out of the db"),
        }
      })
        .on_absent( || { println!("value not found") })
        .on_error( |e| { println!("error retrieving value: {}", e) });

      db.delete(b"my key");

      db.close();
    },
    Err(e) => panic!(e),
  }
}

status

  • basic open/put/get/delete/close
  • linux support
  • rocksdb compiled via cargo
  • OSX support
  • rustic merge operator
  • batch
  • iterator
  • range
  • create/release snapshot
  • column family operations
  • compaction filter, style
  • LRU cache
  • destroy/repair
  • comparator
  • slicetransform
  • windows support

Feedback and pull requests welcome!