Skip to content

CS4224-CCGWX/Wholesale-YCQL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wholesale-YCQL

Cluster setup

Pre-requisite

  • yugabyte-2.14.1.0 installed under /temp, if not installed, run ./scripts/install_yugabyte.sh.
  • Make sure /mnt/ramdisk has enough space (>12G).
  • Make sure the default ports used by Yugabyte masters and tservers are available. You can find the default ports here.

Setup steps

Assume the current working directory is the root directory of this repo (Wholesale-YCQL)

Start cluster on xcnd20 - xcnd24

  • On xcnd20, run ./scripts/start_cluster.sh.
  • The script will start YB-Masters on xcnd20 - xcnd22 and start YB-TServers on xcnd20 - xcnd24
  • Check if server is up by run ps aux | grep -E 'master|tserver' on all cluster nodes. Make sure the 3 masters and 5 tservers are up.

Start cluster on alternative cluster nodes

  • If setting up cluster on alternative nodes, please modify the node names and IP addresses in run_master.sh, run_tserver.sh, and start_cluster.sh.
  • The other scripts involving specifying IPs and node names are also to be modified.

Run YCQL Java application benchmark

Pre-requisite

  • JDK 11
  • Maven
  • Python 3.7 with pandas package (necessary for data pre-processing).
  • cassandra-loader (download to the project root directory)
  • Put the data and transaction files under ./project_files.

Build and package Java application

mvn clean
mvn package

Make sure the project jar file is generated at ./target/Wholesale-YCQL-1.0.jar

Run benchmark

  • Run ./scripts/benchmark.sh to start benchmarking.
  • Check ./log for each transaction files' output and error.
  • CSV files containing summary statistics can be found under ./benchmark.