-
Notifications
You must be signed in to change notification settings - Fork 3
How to Run
- Create the
workloadsdirectory usingmkdir workloads/
- Create
builddirectory and switch directoriesmkdir build/ cd build/ - Compile using
CMAKEcmake .. make
- Input workload description through args.toml
- Run the workload generator using the following format:
./sortedness_data_generator -P <total partitions> -F <relative workload description path>
For example, a sample ingestion workload to create 1M entries with K=L=10 (10% of 1M entries) will look like:
./sortedness_data_generator -F ../src/args.tomlHere, we used "1234" as a seed value, and alpha=1 while beta=1 for the sortedness distribution. We place this created workload in the "workloads/" directory, and use a payload size of 252 Bytes. Note, the data generator requires the name of the output file as input. By default, the benchmark uses the following format for nomenclature:
createdata_N<num_entries>_K<k%>_L<l%>_S<seed_val>_a<alpha_val>_b<beta_val>_P<payload_size>.txtThe following workload description is used to input the previous values.
title = "Single Workload Description"
[global]
domain = 10000000
[[partition]]
start_index = 0
number_of_entries = 1000000
K = 10
L = 10
seed = 1234
alpha = 1
beta = 1
payload = 252
window_size = 1
output_file = "../workloads/createdata_N1000000_K10_L10_S1234_a1_b1_P252.txt"
is_fixed = false
is_binary = false
reverse_order = true
This will by default generate a comma separated txt file with the key in the first column and a randomly generated payload (string) in the second column.
To run the data generator with mutiple workload descriptions, follow the format shown below in the sample completed workload description:
title = "Multiple Workload Descriptions"
[global]
domain = 50000
[[partition]]
start_index = 0
number_of_entries = 2000
K = 10
L = 10
seed = 1
alpha = 1
beta = 1
payload = 0
window_size = 1
output_file = "../workloads/createdata.txt"
is_fixed = false
is_binary = false
reverse_order = true
[[partition]]
start_index = 2000
number_of_entries = 3000
K = 10
L = 20
seed = 1
alpha = 1
beta = 1
payload = 0
window_size = 5
output_file = "../workloads/createdata.txt"
is_fixed = true
is_binary = false
reverse_order = false
[[partition]]
start_index = 5000
number_of_entries = 5000
K = 50
L = 10
seed = 1
alpha = 1
beta = 1
payload = 0
window_size = 10
output_file = "../workloads/createdata.txt"
is_fixed = false
is_binary = false
reverse_order = falseTo run with these multiple partions, use the following script:
./sortedness_data_generator -P 3 -F ../src/args.toml