【问题标题】:unable to run a datalab job on dataproc无法在 dataproc 上运行 datalab 作业
【发布时间】:2017-05-31 05:54:10
【问题描述】:

我已使用 datalab 初始化操作将 datalab 设置为在 dataproc 主节点上运行:

gcloud dataproc clusters create <CLUSTER_NAME> \
--initialization-actions gs://<GCS_BUCKET>/datalab/datalab.sh \
--scopes cloud-platform

这在历史上运行良好。但是,从 30.5 开始,无论多么简单,我都无法再运行任何代码。我刚刚得到“正在运行”进度条。没有超时,没有错误消息。我该如何调试?

【问题讨论】:

  • 我还注意到我得到:“无法交叉验证小部件前端和后端版本。错误:尝试交叉验证小部件前端和后端版本时超时。在经理基地。 js:180"
  • 嘿安德斯,我建立了一个数据实验室集群(--num-masters=1 --master-machine-type=n1-highmem-16 --master-boot-disk-size=370GB - -num-master-local-ssds=1 --num-workers=4 --num-preemptible-workers=5 --worker-machine-type=n1-highmem-16 --scopes=cloud-platform) pyspark 查询,例如sqlContext.createDataFrame 运行良好,我可以获得一个 pyspark 数据框。但每次我运行 .count() 或 .show() 时,它都会一直说“正在运行”。知道是什么原因造成的吗?

标签: google-cloud-dataproc google-cloud-datalab


【解决方案1】:

我刚刚创建了一个集群,它似乎对我有用。

仅仅看到“正在运行”通常意味着集群中没有足够的空间来调度 Spark 应用程序。 Datalab 在 Python 加载时加载 PySpark 并创建 YARN 应用程序。在安排 YARN 应用程序之前,任何代码都会阻塞。

在默认的 2 节点 n1-standard-4 工作集群上,使用默认配置。只能有 1 个 spark 应用程序。您应该能够通过设置 --properties spark.yarn.am.memory=1g 或使用更大的集群来容纳两个笔记本,但您最终仍然会达到每个集群运行笔记本的限制。

【讨论】:

  • 谢谢。我已经使用与以前完全相同的命令重新创建了集群并重新创建了连接,现在可以正常工作了。我只能怀疑这是一个环境。感谢您提供有关笔记本和集群容量的指导。
猜你喜欢
  • 1970-01-01
  • 2020-07-24
  • 2011-11-17
  • 2016-08-21
  • 1970-01-01
  • 1970-01-01
  • 2019-12-31
  • 2014-08-20
  • 2014-12-17
相关资源
最近更新 更多