Table of Contents
Query Optimiser is a compiler project designed to optimize and execute queries efficiently. The project leverages C++ for core compilation tasks, Python for scripting, and Streamlit for a user-friendly web interface. The goal is to provide a robust solution for compiling and optimizing queries, making it easier for users to handle complex query operations.
- Compilation: Efficiently compiles queries using C++.
- Optimization: Implements various optimization techniques to enhance query performance.
- User Interface: Provides a web-based interface using Streamlit for easy interaction.
- Extensibility: Designed to be easily extendable with additional features and optimizations.
A quick introduction of the minimal setup you need to get the application up and running.
Install the gcc package along with flex and bison (following commands are applicable for Ubuntu-based systems):
A quick introduction of the minimal setup you need to get the application up
Install the gcc package along with flex and bison (following commands are applicable for Ubuntu based systems)
sudo apt install build-essentials
sudo apt install flex bison
make run
pip install -r requirements.txt
streamlit run deploy.py
- Clone the repository:
git clone https://github.com/outer-rim/Query-Optimiser.git
cd Query-Optimiser/translator
- Build and run the project:
make run
- Install Python dependencies:
pip install -r requirements.txt
- Run the Streamlit application:
streamlit run deploy.py
.
├── call.py
├── deploy.py
├── inp.txt
├── Makefile
├── README.md
├── requirements.txt
├── test.l
├── test_target_translator.cxx
├── test_translator.cxx
├── test_translator.h
├── test.y
└── tmp
├── in.txt
└── out.txt