Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dataproc上的Pyspark作业在阶段0被卡住_Pyspark_Google Cloud Dataproc - Fatal编程技术网

Dataproc上的Pyspark作业在阶段0被卡住

Dataproc上的Pyspark作业在阶段0被卡住,pyspark,google-cloud-dataproc,Pyspark,Google Cloud Dataproc,我有一个带有2个工作节点的Dataproc集群。我的pyspark程序非常简单 1) 从Bigquery读取500MB数据 2) 应用一些自定义项 3) 根据某些条件显示pyspark SQL数据帧的结果 在第三步中,作业被卡在阶段0,什么也不做。我是Pyspark的新手,但我不认为数据太大,它会被绞死。请帮帮我 @亚当 我的UDF来自RDkit库。是否可以使UDF有效,以便以秒为单位输出 from rdkit import Chem user_smile_string = 'ONC(=O)c

我有一个带有2个工作节点的Dataproc集群。我的pyspark程序非常简单

1) 从Bigquery读取500MB数据 2) 应用一些自定义项 3) 根据某些条件显示pyspark SQL数据帧的结果

在第三步中,作业被卡在阶段0,什么也不做。我是Pyspark的新手,但我不认为数据太大,它会被绞死。请帮帮我

@亚当

我的UDF来自RDkit库。是否可以使UDF有效,以便以秒为单位输出

from rdkit import Chem

user_smile_string = 'ONC(=O)c1ccc(I)cc1' 
mol = Chem.MolFromSmiles(user_smile_string)

def Matched(smile_structure):
    try:
        match = mol.HasSubstructMatch(Chem.MolFromSmiles(smile_structure))
    except Exception:
        pass
    else:
        return (match)

正如评论中提到的,您需要对工作进行故障排除,以了解发生了什么

您可以从探索开始,并且可以从谷歌云用户界面访问


如果这不会产生任何有用的信息,那么您需要使用Spark并从那里开始。

由于.show()(df的显示)是触发转换的操作,因此UDF可能有问题,但在不知道实际代码的情况下很难估计,或错误消息。是否检查了资源管理器和节点管理器日志?在Dataproc虚拟机上,它们位于
/var/logs/hadoop-thread/
下,您可以检查DAG以了解执行的确切位置。有时,输入数据集很小,但经过多次操作(如join)后,它会变得很大。此外,您还可以查看Thread web UI以查看是否存在挂起的资源分配。