如何解决寻找磁盘绑定的b树示例
| 也许我的google-foo不能满足您的要求,但我想使用绑定到磁盘的b树alogrithm。由于大多数教程和示例都是基于内存的,因此它们假定使用随机存取存储器,其中更改树中的节点非常简单,但是除了I / O密集型重写或使用内存映射文件外,我无法想到好方法。 理论上会很好,C#或Java会更好。 编辑:我很抱歉缺乏明确性。我不是在寻找要使用的产品或代码库,而是一个示例或说明性的代码库,以更好地理解如何构建磁盘支持的b树。解决方法
东京内阁(或京都内阁)是最快的键值数据库之一(也包含与B + Trees一起使用的键值数据库):)。我在对B + Tree进行基准测试时就使用了它,并且代码很容易理解。它是用C语言编写的,但也具有Java绑定...
东京内阁:
http://fallabs.com/tokyocabinet/
Berkley DB也可以使用B + Tree。但是,当我对Berkley DB进行基准测试时,与Tokyo Cabinet相比,它非常慢...
http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html
, 首先,请参阅Google的第二,第三,第四和第五结果。
其次,看到这个非常类似的问题的stackoverflow线程。
第三,如果以MSSQL为例,您可以在此处阅读一些内容并按此处所述可视化页面(就像缓存行拆分一样,最小化此类拆分很重要)。例如,MSSQL还对可索引的数据施加了大小限制,即页面大小为8k =。
第四,看到我要问的问题的答案,我只能在这里提供这个答案
另外,您可以使用十六进制编辑器来查看数据库文件,并查看事物的映射方式,但这很极端。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。