15

我正在寻找一个经过合理测试的库+服务器来存储持久分布式哈希表。

我对使用基于 SQL 的解决方案犹豫不决,因为数据是高度面向文档的,由数百万个 ~64KB 的 blob 组成,只有一个索引(由所述 BLOB 的哈希计算) - 并且需要能够分布以进行长期扩展前景。

由于费用和带宽方面的考虑,S3 等外部解决方案不是一种选择。

像 CouchDB 或 Project Voldemort 这样的东西是理想的——但是两者都明显缺乏 .NET 绑定(PV 可以是来自 Java 的 IKVMC——但是有“问题”。)。key和value都是字节数组(key为16字节,value最大2048KB平均64KB)

到目前为止,我已经搜索了 Dynamo、Chord 和类似的某种 .NET 端口 - 但是大多数结果似乎是纯粹的内存缓存,并且缺乏任何形式的持久性或复制。

有人有任何想法或建议吗?

4

5 回答 5

8

看看 Ayende 的Rhino DHT。可能更符合您正在寻找的内容。来源可以在这里获取。

于 2009-04-30T00:00:17.563 回答
2

DryadLINQHadoop.Net可能会有所帮助。

Hadoop.Net 是 Hadoop 的 dotnet 版本。更多关于 Hadoop 的信息可以在这里找到

于 2009-05-17T17:35:09.850 回答
2

我实际上认为您应该考虑使用 SQL Server 2008。将数据存储在具有 varbinary(max) 列的表中,以及包含该列哈希的列中。按照您的建议,索引哈希。

然后,您将能够使用该产品的各种分发功能。

于 2009-05-17T18:01:17.147 回答
1

考虑MS 速度

简介:“Velocity”是一个分布式内存应用程序缓存平台,用于开发可扩展、可用和高性能的应用程序。“速度”融合多台计算机的内存,为应用程序提供一个统一的缓存视图。应用程序可以存储任何可序列化的 CLR 对象,而不必担心对象的存储位置。只需按需添加更多计算机即可实现可扩展性。“速度”还允许跨集群存储数据副本,从而保护数据免受故障影响。“Velocity”可以配置为作为通过网络访问的服务运行,也可以嵌入分布式应用程序中运行。

于 2009-04-29T20:21:16.713 回答
1

您可以尝试 StorageEdge,它在后端具有 NCache 技术,因此通过使用它,您将获得分布式缓存的支持,这将提高 SharePoint 的性能、可靠性、可扩展性并同时优化其存储。

这是 StorageEdge 主页的链接http://www.alachisoft.com/storageedge/我希望它有所帮助:)

Rest for .NET 你可以随时尝试 NCache 在分布式缓存中的大牌,你可以在http://www.alachisoft.com/ncache/上找到它的详细信息

于 2011-09-15T07:44:28.193 回答