教育目的的简单数据库实现

时间:2012-04-20 05:55:57

标签: database implementation system data-management

我想学习Depth中的数据库系统实现。是否有一个用于教育目的的开源简单数据库实现,我可以通过代码?就像有很多操作系统实现(Minix,Pintos ......)。我想知道是否有类似的数据库教育系统。

我读了几本教科书,主要关注理论和概念。

非常感谢! 阿尔弗雷德

3 个答案:

答案 0 :(得分:8)

然后找一些教育材料:) 当我学习数据库概念时,我的教授要求我们编写一个简单的dbms代码。一个重要的参考是 Redbase

http://infolab.stanford.edu/~widom/cs346/

希望有所帮助。

答案 1 :(得分:3)

MySQLPostgreSQLSQlite都是开源的。您可以找到他们的源代码和相关文档。
另请检查NoSQL数据库组。

答案 2 :(得分:2)

您认为实施数据库的原因很简单吗?

您对数据库的哪些部分感兴趣?存储管理?索引?查询语言?查询计划?交易?

现代(甚至是“玩具”)关系系统具有所有这些组件,这使得它们从一开始就相当复杂。其他DB,例如基于dbm的数据库要简单得多。那么你就有像Lucene这样的东西,它是一个文档和自由格式文本的数据库 - 从概念上讲很简单,但在扩展方面付出了很多努力。

如果您对查询语言感到好奇,可以查看SPARQL的实现,因为它们可以对抗RDF三重存储(不是非常复杂)。

还有像Prevlayer这样的东西,它是一个内存数据库,使用一个名为prevalence的概念。可能是所有这些中最简单的,当你深入了解它时。