Skip to content
BenchXtend - based on Yahoo! Cloud Serving Benchmark
Java Other
Find file
Pull request Compare This branch is 12 commits ahead, 706 commits behind brianfrankcooper:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin
cassandra
core
distribution
doc
dynamodb
elasticsearch
gemfire
hbase
hypertable
infinispan
jdbc
mapkeeper
mongodb
nosqldb
orientdb
redis
voldemort
workloads
.gitignore
BUILD
CHANGELOG
LICENSE.txt
NOTICE.txt
README
checkstyle.xml
pom.xml

README

BenchXtend - based on Yahoo! Cloud System Benchmark (YCSB)
====================================

BenchXtend is a tool that extends YCSB to include the following features:
- Variation of clients during workload execution according to a pre-defined timeline
- Calculation of elasticity metrics of database systems in cloud, both in under and overprovisioning scenarios

For information about the regular YCSB take a look at https://github.com/brianfrankcooper/YCSB

Getting Started
---------------

1. Download the latest release of BenchXtend.

2. Set up a database to benchmark. There is a README file under each binding
   directory.

3. Run YCSB command, but with BenchXtend features:

    bin/ycsb load basic -P workloads/workloada
    bin/ycsb run basic -P workloads/workloada -timeline timeline.xml -sla sla.xml

   timeline.xml file: formatted to list the number of expected clients in each 
   of the workload execution. This way, it is possible to vary the number of clients 
   in a way that fits better to a specific application environment.
    
   sla.xml: defines the expected time for each operation (read, update, ...). It 
   establishes, theoretically, the agreement between a service provider and a 
   service consumer. 
   
   See https://github.com/brianfrankcooper/YCSB/wiki/Running-a-Workload
   for a detailed documentation on how to run a workload.

   See https://github.com/brianfrankcooper/YCSB/wiki/Core-Properties for 
   the list of available workload properties.
Something went wrong with that request. Please try again.