Spark的广播变量有区别于累加器,它主要的作用是用来将一个Driver端的一个具体值,共享给所有Executor的,调用也用对应的方法取值就可以了
package com.sparkcore
import org.apache.spark.{SparkConf, SparkContext}
object broadCastTest {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
conf.setMaster("local").setAppName("brocast")
val sc = new SparkContext(conf)
//理论上只要能被系列化的都可以
//val list = List("hello hadoop")
//val broadCast = sc.broadcast(list)
val broadCast = sc.broadcast("88")
val lineRDD = sc.textFile("words.txt")
lineRDD.map(line=>line+broadCast.value).foreach(println(_))
sc.stop()
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。