Так что, как говорится в комментарии, вам понадобится функция слияния.Предполагая, что вам подходит простое слияние хеш-карт, например, если ключи / значения уникальны, вы можете слить их в локальную карту, используя что-то простое, например rdd.reduce(_++_)
.Затем вы захотите транслировать его так, чтобы он эффективно отправлялся каждому исполнителю один раз.Как только он находится в переменной широковещания, его можно использовать в операциях RDD с другими RDD, такими как обогащение сообщений, как вы сказали.
val brodcast = sparkContext.broadcast( rdd.reduce(_++_) )
И это можно использовать с помощью broadcast.value