有.NET的DBM吗?

有.NET的DBM吗?,.net,berkeley-db,dbm,kyotocabinet,.net,Berkeley Db,Dbm,Kyotocabinet,我正在寻找一个简单的DBM库,比如BerkeleyDB或Kyoto Cabinet,但它本机是为.NET工作的。 我需要管理超过一百万条记录(可能一千万条),并且可能是以分层的方式(最后一点不是强制性的,我们可以使用线性结构) 这样的事情真的存在吗?那怎么办?是一个可行的选择,尽管我不确定“本机为.NET工作”是什么意思,-.NET没有内置数据库(除非你计算数据表和XML,我没有)。假设你在Windows上,我建议通过互操作层尝试ESENT数据库引擎。ESENT内置于Windows中,具有与Be

我正在寻找一个简单的DBM库,比如BerkeleyDB或Kyoto Cabinet,但它本机是为.NET工作的。 我需要管理超过一百万条记录(可能一千万条),并且可能是以分层的方式(最后一点不是强制性的,我们可以使用线性结构)


这样的事情真的存在吗?

那怎么办?

是一个可行的选择,尽管我不确定“本机为.NET工作”是什么意思,-.NET没有内置数据库(除非你计算数据表和XML,我没有)。假设你在Windows上,我建议通过互操作层尝试ESENT数据库引擎。ESENT内置于Windows中,具有与BerkelyDB类似的功能和性能级别。不同之处在于,ESENT不仅仅是一个键/值存储,它内置了列和索引,而且ESENT没有复制功能。

我的公司为伯克利DB XML库构建了一个.NET层,您可以在以下位置下载。您可以获得一个嵌入式XML数据库库,可以在.NET中运行,并且可以在需要时使用不同语言绑定在其他平台上使用这些数据库。如果您感兴趣,请随时与我联系,了解进一步的需求,以便我更好地了解您的解决方案体系结构,看看我们是否适合您

“问候”

我终于找到了,它几乎完全符合我的需要。经过全面测试后,我会在这里写下我的评估

编辑:测试后,它并没有完全按照预期工作。实际上,它并不完全有效,所以我编写了自己的DBM(它总是这样结束:)。在多线程环境中,我经常遇到数据库损坏的问题(是的,我已经检查了我的代码的线程安全性)。
如果有人有积极的反馈,我很感兴趣。

客户端的意思是什么?在浏览器中?我将“客户端”改为“库”,谢谢你的评论。我实际上需要一个简单的库。列表等等。我刚找到Raptor DB:有人试过吗?我不确定SQLite的性能(我更新了我的问题,因为我需要能够快速搜索一百万条记录)。我也不确定文件碎片整理是否有效。我更喜欢用.NET编写的东西,因为应用程序将是多平台的。我还更喜欢一个简单的库。我知道没有用.NET编写的数据库引擎(尝试一下会有点疯狂)。SqlCE是一个使用非常简单的库,它可以毫不费力地处理一百万条记录。当您可以获得(几乎)SQL Server的全部功能时,为什么要寻找一个“简单库”?免费?因为像BerkeyDB或Kyoto Cabinet这样的典型表要快得多:)(此外,我只需要一个简单的键/值存储),但除此之外,我在RDBM和DBM之间找不到任何基准。汽车和自行车之间也没有速度基准,但结果通常也是显而易见的:)谢谢,但应用程序将是多平台的,因此本机代码,尤其是系统组件,不是最佳选择。我也在试验RaptorDB,但我的要求远低于你的要求。我只需要一个唯一的键值存储来将json地理编码结果保存几个月。本质上是RESTful服务响应的非易失性缓存。RaptorDB看起来很合适!