by Komal Vachhani
Code: https://github.com/komalvachhani/komaldb
See all projects here!
About the Project
💡 Project Background
The goal was to create a database and query language from scratch (hence the very original names). The main focus points for this project were data persistence, transaction management, and user interaction. The result is a lightweight yet robust solution that can operate efficiently both locally and with cloud-based support. KQuery is based on Genz slang - for example, a simple “Get
key” is replaced by a “Whatup
key”. There is also concurrent control introduced because in the real world, users must be able to modify the database simultaneously
🔨 Tools
- Python: The programming language used to build the database, manage transactions, and develop the custom query language.
- Tkinter: Used for developing the graphical user interface (GUI) to provide users with an intuitive platform for interacting with the database.
- Amazon S3: Integrated for cloud-based data persistence and backup, ensuring data durability and scalability.
- boto3: The AWS SDK for Python, used to interact with Amazon S3 to upload and retrieve database backups.
- Python logging module: Implemented for detailed tracking of database operations, facilitating monitoring.
🔑 Key Learnings/Takeaways
- Database Design and Implementation
- Cloud Integration