On this page

Install And Run

Install and Run BangDB Server 2.0


Install and run BangDB Server

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://votedontask.com/downloads/bangdb_2.0_<"os_name_version">.tar.gz

d. Or, use the docker image

Option a, b and c

Eventually 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
ubuntu 16 :
wget https://votedontask.com/downloads/bangdb_2.0_ubuntu16.tar.gz
ubuntu 18 :
wget https://votedontask.com/downloads/bangdb_2.0_ubuntu18.tar.gz
ubuntu 20 :
wget https://votedontask.com/downloads/bangdb_2.0_ubuntu20.tar.gz
centos 7 :
wget https://votedontask.com/downloads/bangdb_2.0_centos7.tar.gz
centos 8 :
wget https://votedontask.com/downloads/bangdb_2.0_centos8.tar.gz
rhel 8. :
wget https://votedontask.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 BangDB 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

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
 // show tables:
show tables
// show servertype bangdb: 
show servertype
// see help bangdb: 
// 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
It will run simple put, get and scan and it’s throughput Now run the java test, from main folder
cd bench/server_java 
bash make-app.sh 
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

Was this article helpful to you? Yes No