关系数据库的高效持久化数据结构

Efficient persistent data structures for relational database

提问人:John Nilsson 提问时间:11/20/2008 最后编辑:ericksonJohn Nilsson 更新时间:8/23/2013 访问量:2968

问:

我正在寻找可用于实现关系模型的持久数据结构的材料。

不可变数据结构含义的持久性。

有人知道一些好的资源、书籍、论文等吗?

(我已经有了《纯函数式数据结构》一书,这是我正在寻找的一个很好的例子。

数据结构 函数式编程 RDBMS 不可变性 关系式

评论

0赞 dan_waterworth 9/8/2012
任何排序的树都可以,但如果你想要持久性,你需要一棵具有大分支因子的树。
0赞 Joseph Garvin 2/7/2021
你有没有找到一个令人满意的答案,或者建立任何与此相关的有趣的东西?

答:

7赞 Doug Currie 11/20/2008 #1

将无处不在的 B 树修改为持久性是很简单的。只需在修改节点时始终分配一个新节点,并将新节点返回给递归调用者,递归调用者将通过分配新节点等方式将其插入该级别。最终,将返回新的根节点。每个操作分配的节点不超过 O(log N)。

这是函数式语言中用于实现的技术,例如,2-3 棵树。

-2赞 Stephen 11/20/2008 #2

SQLite有一个b树数据结构实现,你可以看看;

评论

0赞 skyde 9/15/2015
SQLite B-Tree 不是持久的
6赞 Frans Lundberg 8/23/2013 #3

我已经为 BergDB (http://bergdb.com/) 实现了这样的数据结构 - 一个具有持久数据结构的数据模型的数据库。

我建议阅读

http://www.cs.cmu.edu/~sleator/papers/Persistence.htm

这是关于如何基于普通(短暂)数据结构创建持久性数据结构的原始工作。