Skip to content

Commit

Permalink
Refactor DKV-YCSB (#71)
Browse files Browse the repository at this point in the history
  • Loading branch information
kingster authored Jul 28, 2021
1 parent 36d31bd commit 22cb472
Show file tree
Hide file tree
Showing 91 changed files with 156 additions and 12,470 deletions.
79 changes: 22 additions & 57 deletions extras/YCSB/README.md
Original file line number Diff line number Diff line change
@@ -1,80 +1,45 @@
<!--
Copyright (c) 2010 Yahoo! Inc., 2012 - 2016 YCSB contributors.
All rights reserved.
## Quick Start

Licensed under the Apache License, Version 2.0 (the "License"); you
may not use this file except in compliance with the License. You
may obtain a copy of the License at
This section describes how to run YCSB on DKV.

http://www.apache.org/licenses/LICENSE-2.0
#### 1. Start DKV

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied. See the License for the specific language governing
permissions and limitations under the License. See accompanying
LICENSE file.
-->
#### 2. Install Java and Maven

YCSB
====================================
[![Build Status](https://travis-ci.org/brianfrankcooper/YCSB.png?branch=master)](https://travis-ci.org/brianfrankcooper/YCSB)
#### 3. Set Up YCSB



Links
-----
* To get here, use https://ycsb.site
* [Our project docs](https://github.com/brianfrankcooper/YCSB/wiki)
* [The original announcement from Yahoo!](https://labs.yahoo.com/news/yahoo-cloud-serving-benchmark/)

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

1. Download the [latest release of YCSB](https://github.com/brianfrankcooper/YCSB/releases/latest):
- Download the [latest release of YCSB](https://github.com/brianfrankcooper/YCSB/releases/latest):

```sh
curl -O --location https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz
tar xfvz ycsb-0.17.0.tar.gz
cd ycsb-0.17.0
```

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

3. Run YCSB command.
- Prepare binding to benchmark DKV.

On Linux:
```sh
bin/ycsb.sh load basic -P workloads/workloada
bin/ycsb.sh run basic -P workloads/workloada
```

On Windows:
```bat
bin/ycsb.bat load basic -P workloads\workloada
bin/ycsb.bat run basic -P workloads\workloada
```bash
cd <dkv_root>/extras/YCSB
mvn -pl site.ycsb:dkv-binding -am clean package
```

Running the `ycsb` command without any argument will print the usage.

See https://github.com/brianfrankcooper/YCSB/wiki/Running-a-Workload
for a detailed documentation on how to run a workload.
#### 4. Provide DKV Connection Parameters

- Create a `shard.json` file with host, port, password, and cluster mode for the workload you plan to run.

See https://github.com/brianfrankcooper/YCSB/wiki/Core-Properties for
the list of available workload properties.

#### 5. Load data and run tests

Building from source
--------------------
Load the data:

YCSB requires the use of Maven 3; if you use Maven 2, you may see [errors
such as these](https://github.com/brianfrankcooper/YCSB/issues/406).
```bash
./bin/ycsb load dkv -s -P workloads/workloada -p "dkv.conf=./dkv/src/test/resources/single_shard.json"
```

To build the full distribution, with all database bindings:
Run the workload test:

mvn clean package
```bash
./bin/ycsb run dkv -s -P workloads/workloada -p "dkv.conf=./dkv/src/test/resources/single_shard.json"
```

To build a single database binding:

mvn -pl site.ycsb:mongodb-binding -am clean package
1 change: 1 addition & 0 deletions extras/YCSB/bin/ycsb
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,7 @@ def get_classpath_from_maven(module):
"dependency:build-classpath -DincludeScope=compile -Dmdep.outputFilterFile=true'")
mvn_output = check_output(["mvn", "-pl", "site.ycsb:" + module,
"-am", "package", "-DskipTests",
"-Dcheckstyle.skip",
"dependency:build-classpath",
"-DincludeScope=compile",
"-Dmdep.outputFilterFile=true"])
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ LICENSE file.
<dependency>
<groupId>site.ycsb</groupId>
<artifactId>core</artifactId>
<version>${project.version}</version>
<version>${site.ycsb.version}</version>
</dependency>
</dependencies>
</project>
Expand Down
84 changes: 0 additions & 84 deletions extras/YCSB/core/CHANGES.md

This file was deleted.

99 changes: 0 additions & 99 deletions extras/YCSB/core/pom.xml

This file was deleted.

Loading

0 comments on commit 22cb472

Please sign in to comment.