RDF-TDAA: Optimizing RDF Indexing and Querying with a Trie Based on Directly Addressable Arrays and a Path-Based Strategy
- Clone this project
git clone git@github.com:MKMaS-GUET/RDF-TDAA.git
git submodule update --init
- Build this project
cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
Or use the build.sh
script to build this project directly
./scripts/build.sh
Download the RDF data and queries that we want to use:
- 1 Watdiv100M
- 2 Wikidata
- 3 DBpedia
Our RDF engines benchmark is available here
Examples:
rdftdaa build -d db_name --file mydata.nt
rdftdaa query -d db_name --file query.sparql # One query per line in the SPARQL query file
rdftdaa server -d db_name --ip 127.0.0.1 --port 8080
Usage: rdftdaa [COMMAND] [OPTIONS]
Commands:
build Build an RDF database.
query Query an RDF database.
server Start an RDF server.
Options:
-h, --help Show this help message and exit.
Commands:
build
Build an RDF database.
Usage: rdftdaa build [OPTIONS]
Options:
-d, --database <NAME> Specify the name of the database.
-f, --file <FILE> Specify the input file to build the database.
-h, --help Show this help message and exit.
query
Query an RDF database.
Usage: rdftdaa query [OPTIONS]
Options:
-d, --database <NAME> Specify the name of the database.
-f, --file <FILE> Specify the file containing the query.
-h, --help Show this help message and exit.
server
Start an RDF server.
Usage: rdftdaa server [OPTIONS]
Options:
-d, --database <NAME> Specify the name of the database.
--ip <IP ADDRESS> Specify the IP address for the server.
--port <PORT> Specify the port for the server.
-h, --help Show this help message and exit.