我对学习数据库引擎的工作方式(即它的内部)感兴趣。我知道CS中讲授的大多数基本数据结构(树,哈希表,列表等),以及对编译器理论的很好理解(并实现了一个非常简单的解释器),但我不知道该怎么做关于编写数据库引擎。我已经搜索了有关该主题的教程,但找不到任何教程,因此我希望其他人可以向我指出正确的方向。基本上,我想了解以下信息:
以及与此相关的任何其他主题。它不必是磁盘上的数据库,即使是内存数据库也可以(如果更简单),因为我只想学习它的原理。
非常感谢您的帮助。
如果您擅长阅读代码,那么学习SQLite将会教会您有关数据库设计的全部知识。它很小,所以缠头比较容易。但是它也是专业写的。
http://sqlite.org/