]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/tools/rdb/README.md
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / rocksdb / tools / rdb / README.md
1 # RDB - RocksDB Shell
2
3 RDB is a NodeJS-based shell interface to RocksDB. It can also be used as a
4 JavaScript binding for RocksDB within a Node application.
5
6 ## Setup/Compilation
7
8 ### Requirements
9
10 * static RocksDB library (i.e. librocksdb.a)
11 * libsnappy
12 * node (tested onv0.10.33, no guarantees on anything else!)
13 * node-gyp
14 * python2 (for node-gyp; tested with 2.7.8)
15
16 ### Installation
17
18 NOTE: If your default `python` binary is not a version of python2, add
19 the arguments `--python /path/to/python2` to the the `node-gyp` commands.
20
21 1. Make sure you have the static library (i.e. "librocksdb.a") in the root
22 directory of your rocksdb installation. If not, `cd` there and run
23 `make static_lib`.
24
25 2. Run `node-gyp configure` to generate the build.
26
27 3. Run `node-gyp build` to compile RDB.
28
29 ## Usage
30
31 ### Running the shell
32
33 Assuming everything compiled correctly, you can run the `rdb` executable
34 located in the root of the `tools/rdb` directory to start the shell. The file is
35 just a shell script that runs the node shell and loads the constructor for the
36 RDB object into the top-level function `RDB`.
37
38 ### JavaScript API
39
40 See `API.md` for how to use RocksDB from the shell.