RocksDB Administration and Data Access Tool

RocksDB CLI Tools provides different administration & data access commands. In this post we are going to download & build the rocksdb source to perform those operation in windows terminal.

Content

  • Install Pre-requisites
  • Download Source
  • Build Source
  • Run Commands

Install Pre-requisites

  • Microsoft Visual Studio 2019 with “Desktop development with C++”

Open “Visual Studio Installer”

From More Option Choose Modify

Choose Desktop Development with C++

C++ CMake Tools for Windows is an Installation Part

Download Source

URL: https://github.com/facebook/rocksdb

Download ZIP or git clone

Build Source

In Windows Terminal change directory to cMake

cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin

Configuring Directory: rocksdb-master

cmake -Hd:/Work/S3i/RocksDB/RocksDbTools/rocksdb-master -Bd:/Work/S3i/RocksDB/RocksDbTools/rocksdb-master/build -G "Visual Studio 16 2019"

CLI Tools

  • Ldb Tool
  • SST dump tool

Build Ldb

cmake --build d:/Work/S3i/RocksDB/RocksDbTools/rocksdb-master/build --config Debug --target ldb

Build SST dump

cmake --build d:/Work/S3i/RocksDB/RocksDbTools/rocksdb-master/build --config Debug --target sst_dump

After successfully build, in “build\tools\Debug” Folder

Run Commands : LDB Tool

Open windows terminal from “build\tools\Debug” or run command in visual code terminal

In terminal run command, get help Instructions

ldb --help

Ldb: Data Access Commands

  • Put
  • BatchPut
  • Get
  • Scan
  • Delete
  • DeleteRange

Ldb: Put

ldb --db=C:\Database\rocksdb --create_if_missing --bloom_bits=14 --fix_prefix_len=14 --compression_max_dict_bytes=16384 --block_size=1048576 --auto_compaction=true --write_buffer_size=4194304 --file_size=2097152 put firstname Shashangka

Output: Ok

Ldb: Get

ldb --db=C:\Database\rocksdb get firstname

Output: Shashangka

Ldb: BatchPut

ldb --db=C:\Database\rocksdb batchput key1 value1 key2 value2 key3 Value3 key4 Value4 key5 Value5

Output: Ok

Ldb: Get

ldb --db=C:\Database\rocksdb get key1

Output: value1

Ldb: Scan

ldb --db=C:\Database\rocksdb scan

Output:

firstname : Shashangka
key1 : value1
key2 : value2
key3 : Value3
key4 : Value4
key5 : Value5

Ldb: Delete

ldb --db=C:\Database\rocksdb delete firstname

Output: Failed: NotFound:

Ldb: DeleteRange

ldb --db=C:\Database\rocksdb deleterange key2 key4

Output: Ok

Ldb: Admin Commands

  • Create Column Family
  • List Column Family
  • Drop Column Family

Ldb: Create Column Family

ldb  create_column_family --db=C:\Database\rocksdb Customer

Output: Ok

Ldb: List Column Family

Output: {default, Customer}

Ldb: Drop Column Family

ldb drop_column_family --db=C:\Database\rocksdb Customer

Output: {default}

Hope this will help to build and use ldb command line tool.

References:

Author:

Since March 2011, have 8+ years of professional experience on software development, currently working as Senior Software Engineer at s3 Innovate Pte Ltd.

Leave a Reply