2016-11-10 47 views
0

是否是次優?什麼時候在Pyspark的廣播中調用`.value`?

## First version ## 
    def myfunc(val, listparam): 
     return val in listparam.value # .value in function 

    mylist_bc = sc.broadcast(mylist) 
    rdd.map(lambda val:myfunc(val, mylist_bc)) 


    ## Second version ## 
    def myfunc(val, listparam): 
     return val in listparam 

    mylist_bc = sc.broadcast(mylist) 
    rdd.map(lambda val:myfunc(val, mylist_bc.value)) # .value outside function 

是否可以使用廣播的第二個版本,他們的功能不知道我使用的是廣播值?我想也許它會干擾廣播。

回答

相關問題