Database Management System (DBMS) is designed to help store and process large collections of data, and is incredibly flexible to perform various kinds of optimizations as long as it achieves serializability with a high-level interface available. The current undergraduate level DBMS course in UW-Madison (i.e., CS564) involves implementing specific modules of DB architecture, including B+ tree, but students may end up spending numerous amounts of effort on corner cases and not gaining a more comprehensive understanding of the internal design. Thus, we present EduDB, a simple database prototype for educational purposes that provides students a clean, concise, and comprehensive overview of the database system. We also attempt to develop an integrative series of course projects based on EduDB, which offers a platform for students to perform any optimization learned during the semester.
翻译:数据库管理系统旨在协助存储与处理大规模数据集合,其设计具有高度灵活性,只要在提供高级接口的同时保证可串行性,即可实现各类优化。威斯康星大学麦迪逊分校当前本科阶段的数据库管理系统课程(即CS564)要求学生实现数据库架构中的特定模块(包括B+树),但学生往往需耗费大量精力处理边界情况,而难以获得对内部设计的整体性认知。为此,我们提出EduDB——一个面向教育场景的简易数据库原型,旨在为学生提供清晰、简洁且全面的数据库系统概览。同时,我们尝试基于EduDB开发一套综合性系列课程项目,为学生搭建实践平台,使其能够灵活应用课程中所学的各类优化技术。