This is the implementation of demonstration paper in CIKM 2023: "gFOV: A Full-Stack SPARQL Query Optimizer & Plan Visualizer."
The logical plan optimizer part is included in Demo Branch in gStore-UO-opt repo.
gFOV.mp4 is a short video showing the usage of the demonstrated system.
- Install Python dependencies:
pip3 install -r requirements.txt
- Install Node.js (LTS version) and yarn:
sudo apt install nodejs
sudo apt install npm
sudo npm install -g yarn
- Install frontend dependencies:
cd plan
yarn install
- Build frontend:
yarn build
- Install gStore:
git clone https://github.com/SoftlySpoken/gStore-UO-opt.git -b demo
cd gStore-UO-opt
make pre -j
make -j
- Initialize your dataset in gStore (use
lubm
as example):
cd gStore-UO-opt
./bin/gbuild -db lubm -f ./data/lubm/lubm.nt
- Start ghttp server in gStore (the port and database name should be the same as in
app.py
)):
cd gStore-UO-opt
./bin/ghttp -db lubm -p 5000
- Start the backend server:
python3 app.py
Please modify the gStore_config
variable to connect to your gStore database.