在 GCP Dataproc 中,我们可以在集群中使用的工作节点的最大数量是多少?

In GCP Dataproc, what is the maximum number of worker nodes we can use in a cluster?

我即将训练包含 7 个分类变量(字符串)的 500 万行数据,但很快将训练 3100 万行数据。 我想知道我们可以在集群中使用的工作节点的最大数量是多少,因为即使我输入类似:2,000,000,它也不会显示任何错误指示。

另一个问题是,确定需要多少工作节点的最佳方法是什么?

提前致谢!

最大簇大小

Dataproc 不限制集群中的节点数,但其他软件可能有限制。例如,已知存在具有 10k 个节点的 YARN 集群部署,因此超过该数量可能不适用于 Dataproc 运行的 YARN 上的 Spark。

此外,您需要考虑 GCE 限制,例如不同的配额(CPU、RAM、磁盘、外部 IP 等)和 QPS 限制,并确保您有足够的这些限制来满足如此大的需求群集。

我认为 1k 节点是一个合理的大小,如果需要的话,可以从大型 Dataproc 集群开始,并且您可以进一步升级它以在集群创建后根据需要添加更多节点。

簇大小估计

您应该根据您的工作负载和要使用的 VM 大小来确定需要多少个节点。对于您的用例,您似乎需要找到有关如何估计 ML 训练的集群大小的指南。

或者您也可以只进行二进制搜索,直到您对训练时间感到满意为止。例如,您可以从 500 个 8 核节点集群开始,如果训练时间太长,则将集群大小增加到 600-750 个节点,然后查看训练时间是否如您预期的那样减少 - 您可以重复此操作,直到您对训练时间感到满意为止,或者直到它不再 scale/improve。