Значение широковещания, доступное внутри foreachPartition - PullRequest
0 голосов
/ 29 августа 2018

В драйвере я создал val для трансляции, который создается без проблем:

val some_val = 100
val some_val_BC = sc.broadcast(some_val)

Однако, внутри конструкции foreachPartition, если я пытаюсь каким-либо образом получить доступ к some_val_BC и использовать его, я получаю Task not serializable error.

Я точно понимаю Broadcast JOIN, и этот пример:

 rdd.map(i => broadcasted.value.contains(i))

а как же? :

val x = some_val_BC.value

Я не вижу причины, почему. Если только он не должен использоваться с картой.

1 Ответ

0 голосов
/ 04 сентября 2018

Только не как это работает. Похоже, это может быть полезно imho.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...