【发布时间】:2010-09-15 10:25:25
【问题描述】:
过去几年我一直在使用数据库,我想我已经相当有能力使用它们了。但是,我最近在阅读有关 Joel 的 Law of Leaky Abstractions 的信息,我意识到即使我可以编写查询来从数据库中获取几乎任何我想要的东西,但我不知道数据库实际上是如何解释查询的。有谁知道任何解释数据库内部工作原理的好文章或书籍?
我感兴趣的一些具体的事情是:
- 数据库实际上做了什么来找出与 select 语句匹配的内容?
- 对于具有多个“where key1 = key2”语句的查询,数据库如何解释连接?
- 数据库如何存储其所有内存?
- 如何存储索引?
【问题讨论】:
-
如果是 SQL 服务器,我强烈推荐 Inside Microsoft SQL Server 2005 系列(微软出版社),尤其是存储引擎和查询。它回答了你所有的问题等等。您可能对其中一些博客感兴趣:Craig FreedmanKalen Delaney 也值得订阅SQLServerCentral..
-
试试这个db.cs.berkeley.edu/papers/fntdb07-architecture.pdf 和维基百科。这是一个有点庞大的主题和模型,如 RDBMS、FLATFILE 等。解析器确实是最重要的组件之一。谢谢
-
截至 2015 年,有一个 this article 看起来不错。
-
数据库内部架构复杂THIS ARTICLE详细解释mysql服务器和存储引擎的工作原理。
标签: database reference internals