bg
server – Install – BangDB = NoSQL + AI + Stream

server – Install

chevron

Install and Run BangDB Server 2.0

Install

image

Step 1
---------
You may get the BangDB using of one of these four ways;

a. Pick and take the tar file from the download page
b. Clone the BangDB public github repo
c. Simply use wget. [ wget https://bangdb.com/downloads/bangdb_2.0_<"os_name_version">.tar.gz ]
d. Or, use the docker image [ https://hub.docker.com/r/bangdb/bangdb ]

Option a, b and c

Evetually all these three options gives you a tar file and we can install using it.
Following are the names of the binary, you may directly download using wget ubuntu16 : wget https://bangdb.com/downloads/bangdb_2.0_ubuntu16.tar.gz ubuntu18 : wget https://bangdb.com/downloads/bangdb_2.0_ubuntu18.tar.gz ubuntu20 : wget https://bangdb.com/downloads/bangdb_2.0_ubuntu20.tar.gz centos7 : wget https://bangdb.com/downloads/bangdb_2.0_centos7.tar.gz centos8. : wget https://bangdb.com/downloads/bangdb_2.0_centos8.tar.gz rhel8. : wget https://bangdb.com/downloads/bangdb_2.0_rhel8.tar.gz

The downloaded tar file will be like this (for ubuntu18)

bangdb_2.0_ubuntu18.tar.gz

Untar this file
> tar -xzvf bangdb_2.0_ubuntu18.tar.gz
Step 2
---------
> cd bangdb_2.0_ubuntu18

You will find README here, which has the steps to install and run the server, must follow the steps provided in the README


Run the install.sh file (May run for few min and finally everything should be set up)
> bash install.sh
Step 3
---------
Run the server

There are two ways to run the server, using the server binary directly OR using the helper script

Let's use helper script
> ./bangdb-server start
This will run the server in background
You may check the status of BangDB server using
> ./bangdb-server status
Status 'bangdb-server-2.0' :                  Running
And you may stop the server by
> ./bangdb-server stop
That’s it.

You can also directly run bangdb-server using the binary, it will allow you to provide command line argument as well. This allows user to have more control on how server may run by using command line arguments. However, all of these arguments could be configured by editing the bangdb.config file and use above mentioned helper script. Hence if you use script then these should be set in bangdb.config.
See bangdb.config for more details. It is super important to learn this if you wish to have more control on how server is run

To run the server using this option, you need to go to bin folder and run the server that's it.
>cd bin
>./bangdb-server-2.0

use --help command line arg to see all the options
>./bangdb-server-2.0 --help
There are few parameters that should be set and please see config page to learn more.
This is default mode of running the server and kindly see config page to learn various configurations and also running servers with added features


Next you should run cli and the test benchmark and check all is fine.

Use the cli
————————
> cd cli
> ./bangdb-cli-2.0

// show tables;

        bangdb > show tables

// show servertype

       bangdb > show servertype

// see help

       bangdb > help

// see help for stream

       bangdb > help stream

// so on...
BangDB cli is quite comprehensive and supports all activities that we can perform on BangDB, from DDL to DML to some admin tasks.
See the bangdb cli page for lot more details

Run test benchmark and test
————————————---------------

Run bench to see all is good and also typical throughput for the server. Please note this gives bare minimum throughput data as single client runs, to check actual IOPS, pls see benchmark

Make sure server is running or run the server
> ./bangdb-server start
Go to bench folder, let’s go to cpp folder for now
> cd bench/server_cpp
Build the test
> bash build.sh
This will build a bench file, now run the bench
> ./bench
It will run simple put, get and scan and it’s throughput

Now run the java test, from main folder
> cd bench/server_java
Compile
> bash make-app.sh
Run
> bash exapp.sh

so on ...

To do proper benchmark, we need to set up the config properly and also use a server which has minimum of 8GB RAM and 4 Cores. YCSB benchmark can also be set up and run. This would allow user to compare the number vis-a-vis other dbs
You may use bangdb clients to write powerful application to enable some of the use cases. BangDB clients allows you to write highly efficient, high performance and scalable apps due to its own messaging framework, servers architecture and ability to handle high volume with speed at ease from tens of thousands of connections