用户定义函数的pyspark映射在写入外部脚本时不起作用

时间:2017-08-28 09:12:46

标签: python python-2.7 apache-spark pyspark rdd

我正在使用python 2.7和pyspark,

我使用用户定义的函数,当我像这样使用它时,它运行良好

def func(x):
    pass 

RDD.map(lambda x:func(x))

但是当我在另一个名为utils的脚本中创建函数并使用

from utils import func as func 
RDD.map(lambda x:func(x))

我收到错误

  

ImportError:没有名为utils的模块

如何从用户定义的模块导入函数并将其与RDD映射一起使用?

谢谢

1 个答案:

答案 0 :(得分:2)

在命令行中:

spark-submit --py-files utils.py ...

或者在剧本中:

sc.addPyFile('file:///path/to/utils.py')