今天来说一下spark,动态广播变量的用法,如果对广播变量用法不清楚的可以查看这个博客,在实际项目中,有时候我们的广播变量是动态的,比如需要一分钟更新一次,这个也是可以实现的,我们知道广播变量是在driver端初始化,在excetors端获取这个变量,但是不能修改,所以,我们可以在driver端进行更新这个变量,具体的代码实现如下所示:
package test
import java.sql.{Connection, DriverManager, ResultSet, Statement}
import java.text.SimpleDateFormat
import java.util.{Date, Properties}
import kafka._
import org.apache.kafka.clients.consumer.ConsumerRecord
import org.apache.kafka.common.serialization.{StringDeserializer}
import org.apache.log4j.{Level, Logger}
import org.apache.spark.broadcast.Broadcast
import org.apache.spark.streaming.{Seconds, StreamingContext}
import org.apache.spark.streaming.dstream.InputDStream
import