google-cloud-dataproc - 如何在 PySpark 作业中检索 Dataproc 的 jobId

标签 google-cloud-dataproc

我运行多个批处理作业,我想将 dataproc 中的 jobId 引用到保存的输出文件中。

这将允许所有参数日志和与结果相关的输出。缺点仍然存在:随着 YARN 中的执行器消失,无法再获取单个执行器的日志。

最佳答案

Google dataproc 的上下文通过使用标签传递到 Spark 作业中。因此,所有合适的信息都存在于 SparkConfig 中并且可以访问:

pyspark.SparkConf().get("spark.yarn.application.tags", "unknown")
pyspark.SparkConf().get("spark.yarn.tags", "unknown")

输出如下所示:

dataproc_job_3f4025a0-bce1-a254-9ddc-518a4d8b2f3d

然后可以将该信息分配给我们的导出文件夹,并使用 Dataproc 引用保存输出:

df.select("*").write. \
    format('com.databricks.spark.csv').options(header='true') \
    .save(export_folder)

关于google-cloud-dataproc - 如何在 PySpark 作业中检索 Dataproc 的 jobId,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36527049/

相关文章:

java - 无法在 habase 谷歌云中将存储的 python 整数返回到 java 中

google-cloud-platform - Dataproc Serverless - 如何设置 javax.net.ssl.trustStore 属性以修复 java.security.cert.CertPathValidatorException

apache-spark - Spark thrift 服务器仅使用 2 个内核

python-2.7 - Pyspark 应用程序仅部分利用 dataproc 集群资源

hadoop - Google Cloud Platform 杀死 MapReduce 作业容器 [错误代码 :143]

apache-spark - Dataproc 无法解压由 AWS Kinesis 压缩的 .gz 文件

google-cloud-platform - Google Cloud Platform - 我可以找到 403 响应的原因吗?

python - 从 Spark/Dataproc 将 .txt 文件写入 GCS : How to write only one large file instead of it automatically splitting in to multiple?

kubernetes - 从 Dataproc 集群访问 GKE 集群中的 Postgres

java - 如何使用 Java SDK 在 Dataproc 的 GceClusterConfig 中指定 ZoneUri