回答

收藏

如何编写一个简单的数据库引擎

技术问答 技术问答 125 人阅读 | 0 人回复 | 2023-09-13

我对学习数据库引擎的工作方式(即它的内部)感兴趣。我知道CS中讲授的大多数基本数据结构(树,哈希表,列表等),以及对编译器理论的很好理解(并实现了一个非常简单的解释器),但我不知道该怎么做关于编写数据库引擎。我已经搜索了有关该主题的教程,但找不到任何教程,因此我希望其他人可以向我指出正确的方向。基本上,我想了解以下信息:
% M/ g, L* w8 q0 o6 w$ H! h, `数据如何在内部存储(即表的表示方式等)
, c# k, n0 D8 ^+ E/ q, p9 @引擎如何查找所需的数据(例如,运行SELECT查询)
3 @9 O2 D/ [( i! l- x* Z如何以快速有效的方式插入数据
6 ^+ |" ?$ [6 D! V

" h, p, _1 J" N以及与此相关的任何其他主题。它不必是磁盘上的数据库,即使是内存数据库也可以(如果更简单),因为我只想学习它的原理。
0 p0 p* t2 V/ D' o1 H1 p非常感谢您的帮助。! l# S0 m4 o7 H  X1 q
               
( E6 H  [' Q5 T  @$ l解决方案:4 u! w+ p2 O: K- [7 r
               
  s" ?) a  g4 u" ~0 W# E6 ]0 K
; o$ @$ v( k. g# n1 S, H0 z4 E# j- ]
1 y3 U( P1 v( L                如果您擅长阅读代码,那么学习SQLite将会教会您有关数据库设计的全部知识。它很小,所以缠头比较容易。但是它也是专业写的。5 J& [) E! B; \- o
http://sqlite.org/
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则