Apache Kudu is a storage engine that enables fast analytics on fast data.
Use the following command line to load the initial data into an existing Kudu cluster with default configurations.
bin/ycsb load kudu -P workloads/workloada
Additional configurations:
kudu_master_addresses
: The master's address. The default configuration expects a master on localhost.kudu_pre_split_num_tablets
: The number of tablets (or partitions) to create for the table. The default uses 4 tablets. A good rule of thumb is to use 5 per tablet server.kudu_table_num_replicas
: The number of replicas that each tablet will have. The default is 3. Should only be configured to use 1 instead, for single node tests.kudu_sync_ops
: If the client should wait after every write operation. The default is true.kudu_block_size
: The data block size used to configure columns. The default is 4096 bytes.kudu_partition_schema
: The partition schema used to create table. It could be 'hashPartition' or 'rangePartition', the default is 'hashPartition'.
Then, you can run the workload:
bin/ycsb run kudu -P workloads/workloada
If you wish to use a different Kudu client version than the one shipped with
YCSB, you can specify on the command line with -Dkudu.version=x
. For example:
mvn -pl site.ycsb:kudu-binding -am package -DskipTests -Dkudu.version=1.0.1
Note that only versions since 1.0 are supported, since Kudu did not guarantee wire or API compatibility prior to 1.0.