.net Net中的持久二叉树/哈希表

.net Net中的持久二叉树/哈希表,.net,hashtable,binary-tree,berkeley-db,dht,.net,Hashtable,Binary Tree,Berkeley Db,Dht,我需要一个纯.Net持久哈希表/二进制树,功能类似于berkeley db Java edition。 从功能上讲,它应该与DHT类似,比如memcached和velocity等,但它不必是分布式的。本质上,我在寻找一个持久的哈希表 有人有什么想法或建议吗 这里也有一个类似的问题: Paul您是否尝试过在System.collections.Generic中使用内置集合?并使用序列化将小狗推到XML文档或类似的东西上。 你可以考虑OR。两者都有将它们连接到SQL Server数据库作为备份存储的

我需要一个纯.Net持久哈希表/二进制树,功能类似于berkeley db Java edition。

从功能上讲,它应该与DHT类似,比如memcached和velocity等,但它不必是分布式的。本质上,我在寻找一个持久的哈希表

有人有什么想法或建议吗

这里也有一个类似的问题:


Paul

您是否尝试过在System.collections.Generic中使用内置集合?并使用序列化将小狗推到XML文档或类似的东西上。

你可以考虑OR。两者都有将它们连接到SQL Server数据库作为备份存储的方法


另一种方法是使用XML或二进制格式化程序简单地序列化对象。(顺便问一下,它可以用于深度克隆)

这个怎么样

作为替代方案,您可以考虑使用索引引擎,如Lucene.net


它会给你一个更好的索引列表,我相信容量,虽然这不是真正的预期用途。其预期用途是解析文件,但也可以用于解析数据库。在我以前的工作场所,他们使用Lucene(java实现)从数据库数据中按类别索引我们的产品目录。

你是说你想要一个数据库吗?或者您希望能够将哈希表写入磁盘并重新读取?或者别的什么?我需要一个类似于berkeley db的纯.Net系统。你能链接到我的问题吗?不清楚你说的“持久性”是什么意思-从你的评论中,听起来你好像想要存储在磁盘上的东西,但a是别的东西,例如,看到这个谢谢你的想法,但这两个都不是答案。从本质上讲,berkely db是一个持久的二叉树或哈希表,其大小可以是许多TB。关于bdb的事情是它是一个嵌入式数据库,这是我所需要的,所以sql server也是不可能的。谢谢链接,但这只是c实现的包装。我正在寻找一个纯粹基于.net的解决方案。对于小型集合来说,这可能还可以,但我需要扩展到TB区域。我拥有的一个用例实际上非常适合lucene.net。谢谢你的推荐。