rocksdb/tools/rdb
Fosco Marotto 6c2bf9e916 Add copyright headers per FB open-source checkup tool. (#5199)
Summary:
internal task: T35568575
Pull Request resolved: https://github.com/facebook/rocksdb/pull/5199

Differential Revision: D14962794

Pulled By: gfosco

fbshipit-source-id: 93838ede6d0235eaecff90d200faed9a8515bbbe
2019-04-18 10:55:01 -07:00
..
.gitignore
API.md
binding.gyp
db_wrapper.cc
db_wrapper.h
rdb
rdb.cc
README.md
unit_test.js

RDB - RocksDB Shell

RDB is a NodeJS-based shell interface to RocksDB. It can also be used as a JavaScript binding for RocksDB within a Node application.

Setup/Compilation

Requirements

  • static RocksDB library (i.e. librocksdb.a)
  • libsnappy
  • node (tested onv0.10.33, no guarantees on anything else!)
  • node-gyp
  • python2 (for node-gyp; tested with 2.7.8)

Installation

NOTE: If your default python binary is not a version of python2, add the arguments --python /path/to/python2 to the node-gyp commands.

  1. Make sure you have the static library (i.e. "librocksdb.a") in the root directory of your rocksdb installation. If not, cd there and run make static_lib.

  2. Run node-gyp configure to generate the build.

  3. Run node-gyp build to compile RDB.

Usage

Running the shell

Assuming everything compiled correctly, you can run the rdb executable located in the root of the tools/rdb directory to start the shell. The file is just a shell script that runs the node shell and loads the constructor for the RDB object into the top-level function RDB.

JavaScript API

See API.md for how to use RocksDB from the shell.