Write You a Vector Database
"Write You a Vector Database" is an engaging tutorial designed to teach individuals how to integrate vector capabilities into a relational database system. This educational project is aimed at those interested in expanding their database knowledge by incorporating advanced data handling techniques.
Overview
The tutorial is structured into two main versions: one utilizing C++ and the other employing Rust. Each version is tailored to build vector functionalities, akin to those found in pgVector, into an educational database framework.
-
C++ Version: Participants will work on enhancing a modified version of CMU-DB's BusTub. This involves implementing vector storage, vector expressions, and vector indexes. The aim is to infuse these capabilities into the BusTub system, which is known for its educational use in database systems.
-
Rust Version: Expected to be released in the future, this version will guide participants through implementing vector capabilities on the RisingLight system. RisingLight is another educational tool, providing a unique platform for those interested in Rust for database applications.
Community Engagement
For learners and enthusiasts who might want to connect with others working on the same learning journey, there is an opportunity to join a dedicated community. This is facilitated through skyzh's Discord server, which acts as a hub for discussion, study, and support related to the "Write You a Vector Database" project. Joining this community can enhance the learning experience by enabling participants to share insights, ask questions, and engage with fellow learners.
Licensing and Usage
The starter code for the BusTub vector database, along with its solutions, is available under the MIT license, ensuring users have broad access to modify and use the code. However, specific files that overlap with CMU-DB's Database Systems course are restricted and cannot be publicly shared due to copyright reasons. The tutorial's content, including documentation and illustrations, is fully copyrighted by its author.
Overall, this project provides a unique opportunity for learners to delve into database systems with a specific focus on incorporating vector data management skills, enhancing both their theoretical understanding and practical skills.