-
Notifications
You must be signed in to change notification settings - Fork 2
Documentation
QueryBooster is a middleware-based query rewriting framework.
QueryBooster intercepts SQL queries by customizing JDBC drivers used by applications (e.g., Tableau) and uses rules to rewrite the queries to semantically equivalent yet more efficient queries. The rewriting rules are designed by data experts who analyze slow queries and apply their domain knowledge and optimization expertise. QueryBooster can accelerate queries formulated by Tableau up to 100 times faster.
Follow these steps to install and set up QueryBooster:
Clone the QueryBooster repository from GitHub using the following command:
git clone https://github.com/ISG-ICS/QueryBooster.git
QueryBooster requires Python 3.8 or newer.
Navigate to the cloned QueryBooster directory and create a Python virtual environment:
cd QueryBooster
python3 -m venv venv
Activate the virtual environment and install the required Python packages from the requirements.txt file:
source venv/bin/activate
pip install -r requirements.txt
cd client/
npm run build
Navigate to the root directory and run the QueryBooster server using Gunicorn:
cd ..
gunicorn -w 4 -b 127.0.0.1:8000 'server.server:app'
Open your web browser and go to the following link to access the QueryBooster web interface: http://localhost:8000
To ensure everything is set up correctly, run the tests:
python3 -m pytest
Install Tableau Desktop
The QueryBooster customized JDBC drivers repository are listed below:
You can locate the appropriate JDBC driver files in the following directories:
- for Mac:
/Library/Tableau/Drivers
- for Windows:
C:\Program Files\Tableau\Drivers