This is an academic project that serves as an implementation of indexing and hashing algorithms in a database (SQL server).
the project contains the following algorithms:
- Hash table double hashing
- Hash table separate chaining with list
- Hash table separate chaining with LinkedList
- Hash table linear probing
- B+ tree
To start off, clone this branch of the repo into your local:
git clone https://github.com/aL0NEW0LF/indexing-hashing-sqlserver
After cloning the project, create your virutal environment:
cd indexing-hashing-sqlserver
Windows
py -3 -m venv .venv
MacOS/Linus
python3 -m venv .venv
Then, activate the env:
Windows
.venv\Scripts\activate
MacOS/Linus
. .venv/bin/activate
You can run the following command to install the dependencies:
pip3 install -r requirements.txt
Then you are good to go.
To test the code, you can run the test.py
file with:
python test.py
And to run the app:
python main.py
- Optimize the app
- Properly plot the B+ tree
- Add linear probing