- Docker 20 or newer
Run a Docker container with TigerGraph, making sure to mount the data directory as well as a directory thesis which has the contents of this repository:
docker run \
-d \
-p 14022:22 -p 9000:9000 -p 14240:14240 \
--name tigergraph \
--ulimit nofile=1000000:1000000 \
-v ~/tigergraph/data:/home/tigergraph/mydata \
-v ~/Development/thesis:/home/tigergraph/thesis \
-m 6g \
-t docker.tigergraph.com/tigergraph:3.6.0- Connect to the TigerGraph instance with
ssh -p 14022 tigergraph@localhostand enter password tigergraph.
- Start the TigerGraph services with
gadmin start all.
-
Download the recommendations data and place all CSV files in a directory
~/tigergraph/data/recomendations. -
Drop the existing database and create the schema:
gsql ~/thesis/tigergraph/recommendations/schema.gsql- Prepare jobs for loading the data:
gsql ~/thesis/tigergraph/recommendations/preload.gsql- Execute the loading jobs:
gsql ~/thesis/tigergraph/recommendations/load.gsql- Install the validation queries:
gsql ~/thesis/tigergraph/recommendations/prevalidate.gsql- Run the validation queries:
bash ~/thesis/tigergraph/recommendations/validate.sh | jq-
Download the Social Network Benchmark dataset file
social_network-csv_basic-sf$SCALE_FACTOR.tar.zst(where$SCALE_FACTORis0.1,0.3,1etc.) from this repository and extract the CSV files using the instructions. -
Drop the existing database and create the schema:
gsql ~/thesis/tigergraph/snb/schema.gsql- Prepare jobs for loading the data:
gsql ~/thesis/tigergraph/snb/preload.gsql- Adjust the
LDBC_SNB_DATA_DIRvariable in theload.shscript if necessary and execute it:
bash ~/thesis/tigergraph/snb/load.sh- Install the validation queries:
gsql ~/thesis/tigergraph/snb/prevalidate.gsql- Run the validation queries:
bash ~/thesis/tigergraph/snb/validate.sh | jqTigerGraph stores a log of all queries in ~/tigergraph/log/gpe/log.INFO. We provide a script measure.sh which sums up the execution times of all queries in that log and returns the total (in milliseconds). Just be sure to empty the log before starting the workload with echo > ~/tigergraph/log/gpe/log.INFO.