This is an automated email from the ASF dual-hosted git repository.

granthenke pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git


The following commit(s) were added to refs/heads/master by this push:
     new b915df7  [examples] Add a quickstart guide for YCSB
b915df7 is described below

commit b915df7f335ec947cfc8339aa8f59be0188e4469
Author: Grant Henke <[email protected]>
AuthorDate: Tue Feb 11 10:12:55 2020 -0600

    [examples] Add a quickstart guide for YCSB
    
    Adds a brief quickstart guide to show the steps to run YCSB
    against a Kudu cluster.
    
    Change-Id: I26255c9389a8bb59af1009cd67f720149e59f4a1
    Reviewed-on: http://gerrit.cloudera.org:8080/15204
    Reviewed-by: Alexey Serbin <[email protected]>
    Tested-by: Kudu Jenkins
---
 examples/quickstart/ycsb/README.adoc | 98 ++++++++++++++++++++++++++++++++++++
 1 file changed, 98 insertions(+)

diff --git a/examples/quickstart/ycsb/README.adoc 
b/examples/quickstart/ycsb/README.adoc
new file mode 100644
index 0000000..3618c6c
--- /dev/null
+++ b/examples/quickstart/ycsb/README.adoc
@@ -0,0 +1,98 @@
+// Licensed to the Apache Software Foundation (ASF) under one
+// or more contributor license agreements.  See the NOTICE file
+// distributed with this work for additional information
+// regarding copyright ownership.  The ASF licenses this file
+// to you 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
+//
+//   http://www.apache.org/licenses/LICENSE-2.0
+//
+// 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.
+
+= YCSB Quickstart
+
+Below is a brief example running YCSB against Apache Kudu.
+
+NOTE: A Kudu quickstart cluster should not be used for real-world performance 
analysis.
+However, the steps shown here can be used to run YCSB against a real Kudu 
cluster.
+
+== Start the Kudu Quickstart Environment
+
+See the Apache Kudu
+link:https://kudu.apache.org/docs/quickstart.html[quickstart documentation]
+to setup and run the Kudu quickstart environment.
+
+
+== Download YCSB
+
+[source,bash]
+----
+mkdir YCSB
+pushd YCSB
+curl -LO 
https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-0.17.0.tar.gz
+tar xfv ycsb-0.17.0.tar.gz --strip-components=1
+popd
+----
+
+
+== Load and Run a YCSB workload
+
+Next, run the YCSB workload against the loaded data. See the
+https://github.com/brianfrankcooper/YCSB/wiki/Running-a-Workload[YSCB "Running 
a Workload" documentation]
+for more details on the steps and options when running a workload.
+
+NOTE: There are various 
https://github.com/brianfrankcooper/YCSB/blob/master/workloads[workloads]
+available in YCSB. See the comment at the top of each workload file for more 
details.
+
+[source,bash]
+----
+pushd YCSB
+# Load the data
+./bin/ycsb.sh load kudu -P workloads/workloada -s \
+   -p kudu_master_addresses="localhost:7051,localhost:7151,localhost:7251" \
+   -p recordcount=100000 \
+   -p table=workloada \
+   -p kudu_table_num_replicas=3
+# Run the workload
+./bin/ycsb.sh run kudu -P workloads/workloada -s \
+   -p kudu_master_addresses="localhost:7051,localhost:7151,localhost:7251" \
+   -p operationcount=100000 \
+   -p table=workloada \
+   -p kudu_table_num_replicas=3
+popd
+----
+
+
+== Clean up
+
+To clean up the data after running a workload you can destroy the entire
+quickstart cluster as documented 
link:https://kudu.apache.org/docs/quickstart.html#_destroying_the_cluster[here].
+Alternatively, you can drop the table used for the workload using the Kudu 
command line tools:
+
+[source,bash]
+----
+docker exec -it $(docker ps -aqf "name=kudu-master-1") /bin/bash
+kudu table list kudu-master-1:7051,kudu-master-2:7151,kudu-master-3:7251
+kudu table delete kudu-master-1:7051,kudu-master-2:7151,kudu-master-3:7251 
workloada
+exit
+----
+
+
+== Using a different client version
+
+In order to change the Kudu client version used by YCSB, you need to replace 
your YCSB install
+with a clone of the repository and a custom build that specifies the desired 
Kudu version.
+
+[source,bash]
+----
+git clone https://github.com/brianfrankcooper/YCSB.git
+pushd YCSB
+mvn -Psource-run -pl site.ycsb:kudu-binding -am clean package -DskipTests 
-Dkudu.version=1.12.0-SNAPSHOT
+popd
+----

Reply via email to