我不清楚火花分区和纱线容器之间有什么关系。如果我有3个节点(-num-executors= 3)和10个分区,那么纱线是否总共创建了10个容器(如果我正确理解,每个容器都是jvm ),并将它们分散到这3个节点上?资源管理器是否曾为一个分区启动一个容器,然后将其用于下一个分区?
发布于 2015-03-30 10:31:09
来自这 Cloudera的帖子:
当在纱线上运行火花时,每个火花执行器作为一个纱线容器运行。在MapReduce为每个任务调度一个容器并启动一个JVM的情况下,Spark在同一个容器中托管多个任务。这种方法可以使任务启动时间缩短几个数量级。
据我所知,纱线为每个执行器创建一个容器,然后以并行或顺序的方式分配给多个任务。对于您的示例,纱线将总共创建3个容器,为每个容器分配平均3-4个任务(每个分区一个)。
有趣的是,您描述的是MapReduce体系结构的常见行为。
https://stackoverflow.com/questions/29334430
复制相似问题