Skip to content

skyzh/write-you-a-vector-db

Repository files navigation

banner

Write You a Vector Database

A tutorial on how to add vector capabilities to a relational database system.

Access the tutorial at https://skyzh.github.io/write-you-a-vector-db.

We plan to release two variants of this tutorial: a C++ version and a Rust version.

In the C++ version, you will implement pgvector-like capabilities on a modified version of CMU-DB's BusTub educational database system. You will implement vector storage, vector expressions, and vector indexes over BusTub.

In the to-be-expected Rust version, you will implement vector capabilities over the RisingLight educational database system.

Community

You may join skyzh's Discord server and study with the write-you-a-vector-db community.

Join skyzh's Discord Server

License

The BusTub vector-db starter code and solution are under MIT license. Please note that there are some specific files that overlap with the CMU-DB's Database Systems course and we cannot make them public (and you should not either). The author reserves the full copyright of the tutorial (markdown files and figures).