我知道实现数据库是一个巨大的话题,但我想对数据库系统的工作原理有一个基本的了解(例如内存管理,二叉树,事务,sql解析,多通过调查数据库的源代码来实现。学习MySQL,了解RDBMS实现的SQLite源代码
由于有几个已经证明非常强大的开源数据库,如mysql,sqlite等。但是,代码非常复杂,我不知道从哪里开始。我还发现,旧学校的数据库教科书只是解释理论,而不是实施细节。
任何人都可以建议我应该如何开始,如果有任何书强调现代数据库行业中使用的dbms技术和技术?
我知道实现数据库是一个巨大的话题,但我想对数据库系统的工作原理有一个基本的了解(例如内存管理,二叉树,事务,sql解析,多通过调查数据库的源代码来实现。学习MySQL,了解RDBMS实现的SQLite源代码
由于有几个已经证明非常强大的开源数据库,如mysql,sqlite等。但是,代码非常复杂,我不知道从哪里开始。我还发现,旧学校的数据库教科书只是解释理论,而不是实施细节。
任何人都可以建议我应该如何开始,如果有任何书强调现代数据库行业中使用的dbms技术和技术?
我讨厌听起来像一个脾气暴躁的老学者,但如果你决心建立自己的关系数据库系统,那么这个理论就是你需要学习的东西。实现细节实际上只是呃实现细节。除了教科书,你可能还想研究一些研究论文,这些论文往往会更详细地讨论这个问题。
当您开始实施数据库引擎时,您可以查看现有的开源实现,但希望学习曲线陡峭。正如您已经发现的那样,这些项目往往相当复杂。如果您对这些项目有具体问题,请尝试将它们发布到相关的邮件列表中。如果您有关于自己的实现具体问题,张贴在这里:)
http://en.wikibooks.org/wiki/Design_of_Main_Memory_Database_System
通过乌尔曼参考,数据库系统实现的书。如果您想从代码读取,请从jdbc或odbc驱动程序开始,然后向下移至存储层。
谢谢,我目前正在阅读一本名为的书,这是否相关? –
Yang
2010-05-31 08:31:29