1

开始一个新项目并在合适的平台上寻找建议。目前的想法是在 Hazelcast 或 AppScale 之间,因为我们团队的综合(但有限)经验涵盖了旧版本的 Hazelcast 和 GAE。两者显然也可以在 EC2 上设置,这可能是满足我们预期的 CPU 需求的最简单方法。

问题简介

1)。我们的数据由许多按日期(但不总是时间)存储的小记录组成。有些是小的数字记录(业务统计,看起来像每日天气信息或股票市场价格),有些是大文本(日志文件条目)。数据量不大,每天在数百到 50k 之间。

2)。非常大量的计算昂贵的数值模型实例(想想蒙特卡罗模拟)在相同数据的固定大小窗口上不断运行。

3)。许多监控代理提供数据。

4)。每天离线处理一次更大(更长的时间段)的相同数据集。

使用 Hazelcast,我们会将传入数据添加到地图中,并使用 Executor 服务在共享数据上运行模型。可能使用 Tomcat 来根据需要提供对网格的最小前端访问。

使用 AppScale,我们将为每种数据类型添加表,并使用任务队列 API 来构建数值模型。根据 GAE 部署到 AppScale 的 Servlet 以提供前端。

问题

对于这样的需求,我们应该使用 AppScale 还是 Hazelcast?也就是说 - 对于上述问题,我们应该考虑是否有任何支持/反对这两个平台的突出因素?

4

1 回答 1

2

如果您更喜欢/需要一个分布式的、面向服务的编程模型(任务包),那么答案就是 AppScale。如果您更喜欢/需要并行编程模型(单机抽象),那么答案就是 Hazelcast。AppScale 也是一个完整的云平台(与仅数据存储相比),它使您能够随着应用程序的发展做更多的事情。如果您使用 AppScale,您可以调整任务的时间限制,并使用您想要使用的库自定义平台,以实现计算量大的方法。

于 2014-09-29T17:58:34.613 回答