摘要:
当我回想涉及到关系数据库的知识点时,我不禁觉得若有所失。它们很多地方会用到。会有很多不同的数据库:小而有用的 SQLite 到强大的 TealData。但是,只有很少的文章解释数据库是如何工作的。你可以自己谷歌一下 “关系数据库是如何工作”,看看结果数量是多少。此外,那些文章都是很短的。而现在,如果你在寻找最时髦的技术(大数据,NoSQl 或者 JavaScript),你会找到更多深入的文章解释他们是如何工作 这是因为关系数据库太旧,太无聊,以致于不能在大学课程、论文和书籍之外解释吗? 阅读全文
摘要:
很久之前(在一个遥远的银河系中。。。),开发者不得不完全地知道他们编码时所有的细节。他们对算法和数据结构必须要十分理解,因为他们接受不了浪费慢速计算机的CPU和内存的时间。 阅读全文
摘要:
我们刚刚看到了数据库中的基础组件。我们现在需要退一步来纵观全局。 数据库是可以轻松访问和修改的信息集合。但一堆简单的文件可以做同样的事情。事实上,像 SQLite 那些最简单的数据库也不过是一堆文件罢了。但 SQLite 是一组精心设计的文件,因为它允许您: 阅读全文
摘要:
客户端管理器是处理与客户端通信的部分。客户端可以是(Web)服务器或最终用户(end-user)/最终应用程序(end-application)。客户端管理器通过一组广为人知的 APIS:JDBC、ODBC、OLE-DB...来提供不同的访问数据库的方式。 阅读全文
摘要:
这部分是数据库的强大之处。在这部分中,一个写的不太好的查询被转换成一个快速的可执行代码。然后执行代码,并将结果返回给客户端管理器。这是一个多步骤操作 阅读全文
摘要:
这步中,查询管理器正在执行查询并需要从表和索引中获取数据。它这会要求数据管理器给它数据,但这有两个问题:1、关系数据库使用一个事务模型。所以你有可能会有时拿不到数据因为正好那时有人在使用/修改数据。2、数据库检索是数据库最慢的操作。所以数据库需要很聪明地在内存缓冲区中存取数据。 阅读全文