我有一项工作需要很长时间才能在DataProc上运行。与此同时,我需要能够开展其他小型工作。如何在Google Dataproc上运行两个并行作业
从我可以从Google Dataproc文档中收集到的信息来看,该平台应该支持多个作业,因为它使用YARN动态分配资源。
但是,当我尝试启动多个作业时,它们排队等待,直到群集空闲时才启动。
所有设置都是默认设置。我怎样才能让多个作业同时运行?
我有一项工作需要很长时间才能在DataProc上运行。与此同时,我需要能够开展其他小型工作。如何在Google Dataproc上运行两个并行作业
从我可以从Google Dataproc文档中收集到的信息来看,该平台应该支持多个作业,因为它使用YARN动态分配资源。
但是,当我尝试启动多个作业时,它们排队等待,直到群集空闲时才启动。
所有设置都是默认设置。我怎样才能让多个作业同时运行?
Dataproc确实支持多个并发作业。但是,托管多个作业的能力取决于Yarn是否拥有主管应用程序主文件(或作业将排队)或实际工作人员(或作业需要很长时间)的可用能力。
大型作业请求的容器数量取决于分区数量。使用默认设置,Dataproc工作人员将支持2个Mapper或Reducer任务。如果您正在处理100个文件,并且每个文件都是一个分区,则现在可以分配整个群集容量。
有几件事情你可以做:一个单独的集群上
运行的小作业。你理想的集群配置是当一个人的工作占据了整个集群,或N职位均匀共享集群
添加额外的工人到您当前群集和/或抢占工人实验(您可以使用clusters update
命令调整[2] )
(高级)试验不同的纱线调度(参见[1]用于与队列公平调度器)
[2] https://cloud.google.com/sdk/gcloud/reference/dataproc/clusters/update