我最近玩了Hadoop,对 MapReduce 作业的调度、管理和报告印象深刻。它似乎使新作业的分配和执行非常无缝,使开发人员可以专注于他们的作业的实施。
我想知道 Java 域中是否存在任何用于分布式执行作业的东西,这些作业不容易表示为 MapReduce 问题?例如:
需要任务协调和同步的作业。例如,它们可能涉及任务的顺序执行,但同时执行一些任务是可行的:
.-- B --. .--A --| |--. | '-- C --' | Start --| |-- Done | | '--D -------------'
您想要分发但不提供任何输出以减少的 CPU 密集型任务 - 例如图像转换/调整大小。
那么有没有提供这种分布式计算环境的Java框架/平台呢?或者使用 Hadoop 是否可以接受/实现这种事情 - 如果是的话,这些工作是否有任何模式/指南?