有关构建 RDBMS 的资源

发布于 2024-07-13 02:43:33 字数 1542 浏览 5 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

公布 2024-07-20 02:43:34

有一些关于此类内容的教科书,当我上大学时,我们为课堂项目做了这个。 这本书应该真正帮助你 数据库系统:完整的书

我忘了提及它,但我的代码在 googlecode 上:cs4420 -dbase

请原谅它是用 java 编写的,但我的队友在这个决定上投票失败了。 但基本的想法仍然存在。 它处理文件创建和处理以及简单的 SQL 解析器和优化器。 它处理基本索引(b 树)和“内存”管理。 请原谅一些缺乏评论和奇怪的评论,我们在这个项目上度过了许多深夜。

There are a few textbooks about this sort of stuff out there, when I was in college, we did this for a class project. This book should really help you on your way Database Systems: The Complete Book

I forgot to mention it, but my code is on googlecode here: cs4420-dbase

Please forgive the fact it is written in java, but I was outvoted by my teammates on that decision. but the basic ideas are all still there. It handles file creation and handling as well as a simple SQL parser and optimizer. It handles basic indexing (b-tree) and "memory" management. Please forgive some of the lack of commenting and strange commenting, many late nights were spent on that project.

-黛色若梦 2024-07-20 02:43:34

我建议从 数据库系统简介交易信息系统。 他们都应该有参考书目来帮助你进一步了解。

I'd suggest starting with Introduction to Database Systems and Transactional Information Systems. They should both have bibliographies to take you further.

慢慢从新开始 2024-07-20 02:43:34

构建 RDMS 并不简单,您需要将多个领域的经典 CS 知识与有关硬盘驱动器、操作系统细节、文件系统、内存、CPU、缓存的深入知识结合起来,以使其高效。

我们需要阅读的一篇关于架构的好文章是:

http:// www.nowpublishers.com/product.aspx?product=DBS&doi=1900000002

对于数据库的理论知识我建议买一本关于这个主题的书,我只能谈谈我为此使用的书,数据库系统是一种面向应用程序的方法,作者是 Kifer、Bernstein 和 Lewis。

您可能想查看一些开源数据库以获取想法。

Building a RDMS is not trival, you need to combine classic CS knowledge from several fields together with deep knowledge about harddrives, OS specifics, filesystems, memory, cpu, caches to make it efficient.

A good article about architecture we are required to read is:

http://www.nowpublishers.com/product.aspx?product=DBS&doi=1900000002

For theoretical knowledge about databases I would recommend to buy a book on this topic, I can only talk about the book I use for this, which is Database Systems an Application-Oriented Approach by Kifer, Bernstein and Lewis.

You might want to look at some opensource databases for ideas.

情绪操控生活 2024-07-20 02:43:34

我最近遇到了同样的问题,和其他人一样,我费了很大劲才找到一本有助于从头开始构建实际 RDBMS 的书(当然是最小的)。 与其他 CS 领域(操作系统、编译器等)中发生的情况相反; 数据库领域在这方面的资源似乎较少。 可能是因为 RDBMS 是最难掌握和实施的;-|

尽管如此,我最终还是找到了一个似乎令人满意的答案。 Sciore 的书《数据库设计与实现》:

http://www.wiley.com/ WileyCDA/WileyTitle/productCd-EHEP000711.html

前两部分致力于学习使用 RDBMS,您可能已经知道了。 但最后两部分涵盖了实现细节; 有趣的是,使用了一个最小的RDBMS(SimpleDB)来说明概念,并且还可以作为执行编程练习的平台。 Wiley 网站有一句话说得更好:

“附带 SimpleDB,这是一个免费下载、功能齐全的简化数据库系统,它(与商业 DB 系统不同)小、易于读取且易于修改。SimpleDB 可以用作学生可以在平台上完成作业项目并实施书中所涵盖的概念。”

不要因为示例 RDBMS 是用 Java 编写的而烦恼; 其优点(恕我直言)隐藏了 C/Unix 中实现的低级细节。 如果您像我一样来自应用程序世界,您可能不熟悉系统编程的东西; 但是学习 Java 等高级语言的 RDBMS 实现概念可以作为过渡的良好桥梁。

Wiley 网站允许购买该书的电子版,但无论您购买它,都可以获得源代码。 我不能发布两个以上的链接,但只要谷歌这个词(包括双引号),你就会很容易找到 SimpleDB 主页(在那里你可以下载它):

“The SimpleDB Database System”

如果你不确定是否购买书(与其他核心计算机科学书籍一样,对学生来说并不便宜); 也许您可以开始阅读代码和这篇介绍性文章:

http://www. cs.bc.edu/~sciore/papers/SIGCSE07.pdf

如果您发现这本书很有吸引力,那么购买这本书可能是一项不错的投资。

希望有帮助,
干杯。

I recently came to the same question, and like others, struggled a bit finding a book that helped in building an actual RDBMS from scratch (minimal, of course). Contrary to what occurs in other CS areas (OS, Compilers, etc); the Databases area seems to have fewer resources in this regard. Probably because RDBMS are among the hardest to grasp and implement ;-|

Nevertheless, I finally found what appears to be a satisfying answer. Sciore's book "Database Design and Implementation":

http://www.wiley.com/WileyCDA/WileyTitle/productCd-EHEP000711.html

The first two parts are dedicated to learning to use RDBMS, which you probably know already. But the last two parts cover implementation details; and the interesting thing is that a minimal RDBMS (SimpleDB) is used to illustrate the concepts, and also can serve as the platform to perform programming exercises. The Wiley site has a quote that says it better:

"Comes with SimpleDB, a free-to-download, fully functional simplified database system that is (unlike commercial DB systems) small, easily readable and easily modified. SimpleDB can be used as the platform on which students complete homework projects and implement the concepts covered in the book."

Do not bother by the fact the sample RDBMS is written in Java; that has the advantage (IMHO) of hiding the low-level details of implementing in C/Unix. If you come like me from the applications world, you may be unfamiliar with system-programming stuff; but learning the RDBMS implementation concepts in a high level language like Java, can serve as a good bridge for the transition.

The Wiley site allows to buy an electronic version of the book, but the source code is available regardless you buy it. I can not post more than two links, but just google this term (including double quotes), and you will easily find the SimpleDB home page (where you can download it):

"The SimpleDB Database System"

If you are unsure about buying the book (which like other core-CS books, are not cheap for the student); probably you can start reading the code and this introductory article:

http://www.cs.bc.edu/~sciore/papers/SIGCSE07.pdf

If you find it appealing, buying the book may be a good investment.

Hope that helps,
Cheers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文