pyspark中addPyFile的用法不明确
pyspark中有一个pyspark中addPyFile的用法不明确,pyspark,Pyspark,pyspark中有一个addPyFile方法,但我不知道如何使用它,而且它在网上的使用很少。我认为addPyFile可以将python文件传递给spark节点,我测试了它: sc.addPyFile("/sparkLearning/tools/redis_util.py") rdd = sc.parallelize([('a', 10), ('b', 20), ('c', 30)]) def map_1(row): redis_util = redis_util.RedisUtil()
addPyFile
方法,但我不知道如何使用它,而且它在网上的使用很少。我认为addPyFile
可以将python文件传递给spark节点,我测试了它:
sc.addPyFile("/sparkLearning/tools/redis_util.py")
rdd = sc.parallelize([('a', 10), ('b', 20), ('c', 30)])
def map_1(row):
redis_util = redis_util.RedisUtil()
k = row[0]
v = row[1]
redis_util.set(name=k, value=v)
rdd.map(map_1).collect()
出现错误:
UnboundLocalError:assignment之前引用的局部变量'redis_util'
,但是如何获取addPyFile
的用法?您导入了redis_util
?我已经使用addPyFile添加了文件,是否需要再次导入?您能否提供完整的错误消息?