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

Screen Shot 2024-08-30 at 5.50.57 PM.png

Screen Shot 2024-08-31 at 12.15.22 PM.png

🔨 Tools

  1. Python: The programming language used to build the database, manage transactions, and develop the custom query language.
  2. Tkinter: Used for developing the graphical user interface (GUI) to provide users with an intuitive platform for interacting with the database.
  3. Amazon S3: Integrated for cloud-based data persistence and backup, ensuring data durability and scalability.
  4. boto3: The AWS SDK for Python, used to interact with Amazon S3 to upload and retrieve database backups.
  5. Python logging module: Implemented for detailed tracking of database operations, facilitating monitoring.

🔑 Key Learnings/Takeaways

  1. Database Design and Implementation
  2. Cloud Integration