分布式对象,大数据

时间:2011-08-27 11:47:43

标签: c# .net distributed-computing sharding

我有一个关于大型内存中对象和分布式计算的一般性问题。

我有一个像Class.Object这样的大对象,它存储了大量数据,例如超过200,000个对象并进行计数。现在就是在内存中创建并运行的简单对象,客户端调用其中的数据。因为速度也很重要,我将这个怪物序列化到桌面上,就像C#BinaryFormatter一样,加载并运行它们。这是一个WCF项目,因此对象保留在内存中。我的问题是我应该如何在多种服务器类型(如分布式计算)中进行扩展。 C#中是否有像“数据库分片”这样的工具。是否有可以将此信息保存到的数据库。这个对象不仅仅是一个简单的数据库表。它在课程上下都有参考。一切都在被引用。有哈希表等谷歌似乎使用“分片”做这种怪物索引,并在不同的服务器上分割数据。是否有一个工具和机制在.NET中执行此操作。这是什么方法?我正在使用Windows Server AppFabric将其保存在内存中并加载它,但似乎我需要将这个怪物对象拆分成碎片?

感谢任何指示和帮助。

2 个答案:

答案 0 :(得分:0)

从未亲自听过一些已准备好在.NET中运行db分片解决方案的内容。从这个问题的其他帖子中读取会很有意思。

但是对于一般知识而且也可能是非常有用的链接可以是这一个:
CodeProject destributed computing with Silverlight

优秀的文章,由我。

祝你好运。

答案 1 :(得分:0)

我想我的答案没有“赞成”,但问题的解决方案不是一些技术性的分片,而是更好的设计。如果你需要在内存中保留这么多的对象,你需要对它有一些非常好的不敏感。是不是一次只能加载一部分?如果客户“在其中调用数据”客户端不必让所有怪物回来吗?如果没有尝试将事情分解为客户真正需要的可管理部分。