Skip to content

weso/RemoteHDT-benchmark

Repository files navigation

RDF Benchmarks Project

This project encompasses tools for RDF benchmarking, automated execution over RDF, and an RDF graph generator using Zarr, a multidimensional array chunk-partition system.

Table of Contents

Description

This project is dedicated to RDF benchmarks, automation of RDF benchmark execution, and an RDF graph generator. Whether you're interested in assessing RDF database performance, automating benchmark runs, or generating realistic RDF graphs, this project has you covered.

(TO BE UPDATED)

Features

  • RDF Benchmarking tools.
  • Automated execution of RDF benchmarks.
  • RDF graph generator for creating synthetic datasets.

Getting Started

There are two projects "benchmarks" and "generate". The first executes the benchmarks and the second generates the RDF test dataset in the Zarr format.

Prerequisites

Having linux installed and rust

Usage

Standard process for running the project in local mode

./reset.sh 
./generate_RDF.sh <file_name> <n_nodes> <n_predicates> <n_triples> 
./execute_benchmark.sh local <number_of_iterations>

Standard process for running the project with also remote benchmarking. For that set <type_of_benchmark> to "remote" or "all"

./reset.sh 
./generate_RDF.sh <file_name> <n_nodes> <n_predicates> <n_triples>
./start_remote_server_simulation
./execute_benchmark.sh <type_of_benchmark> <number_of_iterations>
./stop_remote_server_simulation

Example of use case

./reset.sh 
./generate_RDF.sh n50-p10-t300 50 10 300
sudo ./start_remote_server_simulation.sh
./execute_benchmark.sh all 5
sudo ./stop_remote_server_simulation.sh

reset.sh

Deletes the folders generated by the other two bash scripts. Don't execute it if you don't want to remove the dataset generated.

generate_RDF.sh

Generates the RDF "database" in Zarr and Ntriples format so you can bench in other systems. You can execute this command as many times as you want as long as you dont repeat names.

<file_name>: name of the output file (example => example.zarr & example.nt generated).

<n_nodes>: number of nodes in the graph.

<n_predicates>: number of different predicates in the graph.

<n_triples>: number of triples taking a two different random nodes and relating them with a random predicate.

Contributing

TO BE DONE

License

TO BE DONE

Acknowledgments

TO BE DONE