Google cloud platform 尽管printSchema()为我的spark df生成输出,.show()和.count()不';不行?为什么?

Google cloud platform 尽管printSchema()为我的spark df生成输出,.show()和.count()不';不行?为什么?,google-cloud-platform,pyspark,jupyter-lab,google-cloud-dataproc,Google Cloud Platform,Pyspark,Jupyter Lab,Google Cloud Dataproc,我目前正在使用jupyter hub通过dataproc集群运行PySpark作业。当我运行df.printSchema()时,它返回数据帧的模式,而当我运行df.show(10)或df.count()时,它执行时间不限,并且不生成输出。为什么?如何检查是否正在创建df?printSchema不是一个Spark操作,因此不会计算数据帧,这与show和count不同。检查要诊断的环境的监视。很可能是OOM。有很多因素可能会影响spark作业的性能,如机器类型、数据大小、底层数据源(是表还是视图)等

我目前正在使用jupyter hub通过dataproc集群运行PySpark作业。当我运行
df.printSchema()
时,它返回数据帧的模式,而当我运行
df.show(10)
df.count()
时,它执行时间不限,并且不生成输出。为什么?如何检查是否正在创建df?

printSchema不是一个Spark操作,因此不会计算数据帧,这与show和count不同。检查要诊断的环境的监视。很可能是OOM。有很多因素可能会影响spark作业的性能,如机器类型、数据大小、底层数据源(是表还是视图)等。此外,尽管count不占用太多内存,但它取决于在调用count之前对数据帧执行的转换和操作。您可以用这些信息更新您的问题,以便我能更好地帮助您吗?打印数据框的架构不会对数据框的内容进行操作,就像show()或其他函数那样。printSchema不是Spark操作,因此与show和count不同,不会对数据框进行计算。检查要诊断的环境的监视。很可能是OOM。有很多因素可能会影响spark作业的性能,如机器类型、数据大小、底层数据源(是表还是视图)等。此外,尽管count不占用太多内存,但它取决于在调用count之前对数据帧执行的转换和操作。您可以用这些信息更新您的问题,以便我能更好地帮助您吗?打印数据帧的架构不会像show()或其他函数那样对数据帧的内容进行操作。