ldbc: Separate running short reads from updates

Reviewers: buda

Reviewed By: buda

Subscribers: mferencevic, pullbot

Differential Revision: https://phabricator.memgraph.io/D758
This commit is contained in:
Teon Banek 2017-09-06 15:52:09 +02:00
parent db028221ae
commit 1693530d92
5 changed files with 33 additions and 85 deletions

View File

@ -7,7 +7,12 @@
./setup_dependencies
./setup_dataset [--scale-factor 1]
./neo [--run] OR ./mg [--run]
# To run short reads by default, just call:
./run_benchmark
# To run update queries use the following.
./run_benchmark --properties-file ldbc-snb-impls-updates.properties
# You may need to increase the time compression when updating:
./run_benchmark --time-compresion-ratio 1.5 --properties-file ldbc-snb-impls-updates.properties
## How to run a specific test?

View File

@ -1,71 +0,0 @@
# Linked Data Benchmark Council
# Social Network Benchmark
# Interactive Workload
# *** workload-related driver properties ***
workload=com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcSnbInteractiveWorkload
# *** vendor-related driver properties ***
# database=
# *** workload-specific properties ***
# Directory containing query parameter files
# ldbc.snb.interactive.parameters_dir=
# Directory containing data update stream files
# ldbc.snb.interactive.updates_dir=
# Short reads random walk dissipation rate, in the interval [1.0-0.0]
# Higher values translate to shorter walks and therefore fewer short reads
ldbc.snb.interactive.short_read_dissipation=0.2
## frequency of read queries (number of update queries per one read query)
ldbc.snb.interactive.LdbcQuery1_freq=26
ldbc.snb.interactive.LdbcQuery2_freq=37
ldbc.snb.interactive.LdbcQuery3_freq=69
ldbc.snb.interactive.LdbcQuery4_freq=36
ldbc.snb.interactive.LdbcQuery5_freq=57
ldbc.snb.interactive.LdbcQuery6_freq=129
ldbc.snb.interactive.LdbcQuery7_freq=87
ldbc.snb.interactive.LdbcQuery8_freq=45
ldbc.snb.interactive.LdbcQuery9_freq=157
ldbc.snb.interactive.LdbcQuery10_freq=30
ldbc.snb.interactive.LdbcQuery11_freq=16
ldbc.snb.interactive.LdbcQuery12_freq=44
ldbc.snb.interactive.LdbcQuery13_freq=19
ldbc.snb.interactive.LdbcQuery14_freq=49
# *** For debugging purposes ***
ldbc.snb.interactive.LdbcQuery1_enable=false
ldbc.snb.interactive.LdbcQuery2_enable=false
ldbc.snb.interactive.LdbcQuery3_enable=false
ldbc.snb.interactive.LdbcQuery4_enable=false
ldbc.snb.interactive.LdbcQuery5_enable=true
ldbc.snb.interactive.LdbcQuery6_enable=false
ldbc.snb.interactive.LdbcQuery7_enable=false
ldbc.snb.interactive.LdbcQuery8_enable=true
ldbc.snb.interactive.LdbcQuery9_enable=true
ldbc.snb.interactive.LdbcQuery10_enable=false
ldbc.snb.interactive.LdbcQuery11_enable=false
ldbc.snb.interactive.LdbcQuery12_enable=false
ldbc.snb.interactive.LdbcQuery13_enable=false
ldbc.snb.interactive.LdbcQuery14_enable=false
ldbc.snb.interactive.LdbcShortQuery1PersonProfile_enable=true
ldbc.snb.interactive.LdbcShortQuery2PersonPosts_enable=false
ldbc.snb.interactive.LdbcShortQuery3PersonFriends_enable=true
ldbc.snb.interactive.LdbcShortQuery4MessageContent_enable=false
ldbc.snb.interactive.LdbcShortQuery5MessageCreator_enable=true
ldbc.snb.interactive.LdbcShortQuery6MessageForum_enable=true
ldbc.snb.interactive.LdbcShortQuery7MessageReplies_enable=true
ldbc.snb.interactive.LdbcUpdate1AddPerson_enable=false
ldbc.snb.interactive.LdbcUpdate2AddPostLike_enable=true
ldbc.snb.interactive.LdbcUpdate3AddCommentLike_enable=true
ldbc.snb.interactive.LdbcUpdate4AddForum_enable=false
ldbc.snb.interactive.LdbcUpdate5AddForumMembership_enable=true
ldbc.snb.interactive.LdbcUpdate6AddPost_enable=false
ldbc.snb.interactive.LdbcUpdate7AddComment_enable=false
ldbc.snb.interactive.LdbcUpdate8AddFriendship_enable=true

View File

@ -20,6 +20,9 @@ workload=com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcSnbInteractiveWorklo
# Higher values translate to shorter walks and therefore fewer short reads
ldbc.snb.interactive.short_read_dissipation=0.2
# Take from anilpacaci's consumer-ldbc-short.properties
ldbc.snb.interactive.update_interleave=29669
## frequency of read queries (number of update queries per one read query)
ldbc.snb.interactive.LdbcQuery1_freq=26
ldbc.snb.interactive.LdbcQuery2_freq=37
@ -38,6 +41,8 @@ ldbc.snb.interactive.LdbcQuery14_freq=49
# *** For debugging purposes ***
# At least one needs to be enabled in order to cause interleaving of short
# reads. To get all the reads, you should run with a large operation count.
ldbc.snb.interactive.LdbcQuery1_enable=false
ldbc.snb.interactive.LdbcQuery2_enable=false
ldbc.snb.interactive.LdbcQuery3_enable=false
@ -45,7 +50,7 @@ ldbc.snb.interactive.LdbcQuery4_enable=false
ldbc.snb.interactive.LdbcQuery5_enable=false
ldbc.snb.interactive.LdbcQuery6_enable=false
ldbc.snb.interactive.LdbcQuery7_enable=false
ldbc.snb.interactive.LdbcQuery8_enable=false
ldbc.snb.interactive.LdbcQuery8_enable=true
ldbc.snb.interactive.LdbcQuery9_enable=false
ldbc.snb.interactive.LdbcQuery10_enable=false
ldbc.snb.interactive.LdbcQuery11_enable=false
@ -62,10 +67,10 @@ ldbc.snb.interactive.LdbcShortQuery6MessageForum_enable=true
ldbc.snb.interactive.LdbcShortQuery7MessageReplies_enable=true
ldbc.snb.interactive.LdbcUpdate1AddPerson_enable=false
ldbc.snb.interactive.LdbcUpdate2AddPostLike_enable=true
ldbc.snb.interactive.LdbcUpdate3AddCommentLike_enable=true
ldbc.snb.interactive.LdbcUpdate2AddPostLike_enable=false
ldbc.snb.interactive.LdbcUpdate3AddCommentLike_enable=false
ldbc.snb.interactive.LdbcUpdate4AddForum_enable=false
ldbc.snb.interactive.LdbcUpdate5AddForumMembership_enable=true
ldbc.snb.interactive.LdbcUpdate5AddForumMembership_enable=false
ldbc.snb.interactive.LdbcUpdate6AddPost_enable=false
ldbc.snb.interactive.LdbcUpdate7AddComment_enable=false
ldbc.snb.interactive.LdbcUpdate8AddFriendship_enable=true
ldbc.snb.interactive.LdbcUpdate8AddFriendship_enable=false

View File

@ -20,6 +20,9 @@ workload=com.ldbc.driver.workloads.ldbc.snb.interactive.LdbcSnbInteractiveWorklo
# Higher values translate to shorter walks and therefore fewer short reads
ldbc.snb.interactive.short_read_dissipation=0.2
# Take from anilpacaci's consumer-ldbc-short.properties
ldbc.snb.interactive.update_interleave=29669
## frequency of read queries (number of update queries per one read query)
ldbc.snb.interactive.LdbcQuery1_freq=26
ldbc.snb.interactive.LdbcQuery2_freq=37
@ -45,7 +48,7 @@ ldbc.snb.interactive.LdbcQuery4_enable=false
ldbc.snb.interactive.LdbcQuery5_enable=false
ldbc.snb.interactive.LdbcQuery6_enable=false
ldbc.snb.interactive.LdbcQuery7_enable=false
ldbc.snb.interactive.LdbcQuery8_enable=true
ldbc.snb.interactive.LdbcQuery8_enable=false
ldbc.snb.interactive.LdbcQuery9_enable=false
ldbc.snb.interactive.LdbcQuery10_enable=false
ldbc.snb.interactive.LdbcQuery11_enable=false
@ -53,13 +56,13 @@ ldbc.snb.interactive.LdbcQuery12_enable=false
ldbc.snb.interactive.LdbcQuery13_enable=false
ldbc.snb.interactive.LdbcQuery14_enable=false
ldbc.snb.interactive.LdbcShortQuery1PersonProfile_enable=true
ldbc.snb.interactive.LdbcShortQuery2PersonPosts_enable=true
ldbc.snb.interactive.LdbcShortQuery3PersonFriends_enable=true
ldbc.snb.interactive.LdbcShortQuery4MessageContent_enable=true
ldbc.snb.interactive.LdbcShortQuery5MessageCreator_enable=true
ldbc.snb.interactive.LdbcShortQuery6MessageForum_enable=true
ldbc.snb.interactive.LdbcShortQuery7MessageReplies_enable=true
ldbc.snb.interactive.LdbcShortQuery1PersonProfile_enable=false
ldbc.snb.interactive.LdbcShortQuery2PersonPosts_enable=false
ldbc.snb.interactive.LdbcShortQuery3PersonFriends_enable=false
ldbc.snb.interactive.LdbcShortQuery4MessageContent_enable=false
ldbc.snb.interactive.LdbcShortQuery5MessageCreator_enable=false
ldbc.snb.interactive.LdbcShortQuery6MessageForum_enable=false
ldbc.snb.interactive.LdbcShortQuery7MessageReplies_enable=false
ldbc.snb.interactive.LdbcUpdate1AddPerson_enable=true
ldbc.snb.interactive.LdbcUpdate2AddPostLike_enable=true

View File

@ -17,6 +17,7 @@ function print_help () {
echo -e " --operation-count | -> https://github.com/ldbc/ldbc_driver/wiki/Driver-Configuration"
echo -e " --thread-count |"
echo -e " --result-file-prefix -> Result file prefix."
echo -e " --properties-file -> Properties file used to select queries"
}
# Default parameters.
@ -26,6 +27,7 @@ time_compression_ratio=0.01
operation_count=200
thread_count=8
result_file_prefix="undefined"
properties_file="${script_dir}/ldbc-snb-impls-short-reads.properties"
# Read the arguments.
while [[ $# -gt 0 ]]
@ -47,6 +49,10 @@ do
result_file_prefix=$2
shift
;;
--properties-file)
properties_file=$2
shift
;;
--time-compression-ratio)
time_compression_ratio=$2
shift
@ -70,6 +76,6 @@ cd ${script_dir}/ldbc-snb-impls
mvn clean compile assembly:single
cd ${script_dir}/ldbc_driver
java -cp target/jeeves-0.3-SNAPSHOT.jar:${script_dir}/ldbc-snb-impls/snb-interactive-neo4j/target/snb-interactive-neo4j-1.0.0-jar-with-dependencies.jar com.ldbc.driver.Client -P ${script_dir}/ldbc_driver/configuration/ldbc_driver_default.properties -P ${script_dir}/ldbc-snb-impls-allshortandupdate.properties -P ${script_dir}/ldbc_snb_datagen/social_network/updateStream.properties -p host ${host} -p port ${port} -db net.ellitron.ldbcsnbimpls.interactive.neo4j.Neo4jDb -p ldbc.snb.interactive.parameters_dir ${script_dir}/ldbc_snb_datagen/substitution_parameters --time_compression_ratio ${time_compression_ratio} --operation_count ${operation_count} --thread_count ${thread_count}
java -cp target/jeeves-0.3-SNAPSHOT.jar:${script_dir}/ldbc-snb-impls/snb-interactive-neo4j/target/snb-interactive-neo4j-1.0.0-jar-with-dependencies.jar com.ldbc.driver.Client -P ${script_dir}/ldbc_driver/configuration/ldbc_driver_default.properties -P ${properties_file} -p ldbc.snb.interactive.updates_dir ${script_dir}/ldbc_snb_datagen/social_network -p host ${host} -p port ${port} -db net.ellitron.ldbcsnbimpls.interactive.neo4j.Neo4jDb -p ldbc.snb.interactive.parameters_dir ${script_dir}/ldbc_snb_datagen/substitution_parameters --time_compression_ratio ${time_compression_ratio} --operation_count ${operation_count} --thread_count ${thread_count}
cp ${script_dir}/ldbc_driver/results/LDBC-results.json ${script_dir}/results/${result_file_prefix}-LDBC-results.json