스파크를 스파크 쉘(spark-shell)을 이용하여 처리할 때 카프카와 연동할 때 다음의 오류가 발생하는 경우가 있습니다.
scala> val df = spark.readStream.format("kafka").option("kafka.bootstrap.servers=localhost:9092").option("subscribe=test").load()
:23: error: overloaded method value option with alternatives:
(key: String,value: Double)org.apache.spark.sql.streaming.DataStreamReader
(key: String,value: Long)org.apache.spark.sql.streaming.DataStreamReader
(key: String,value: Boolean)org.apache.spark.sql.streaming.DataStreamReader
(key: String,value: String)org.apache.spark.sql.streaming.DataStreamReader
cannot be applied to (String)
val df = spark.readStream.format("kafka").option("kafka.bootstrap.servers=localhost:9092").option("subscribe=test").load()
해결방법
원인은 스칼라를 파이썬에서 값을 설정하는 방법으로 설정했기 때문입니다. 카프카 부트스트랩 서버의 option 설정을 아래와 같이 처리합니다.
val df = spark.readStream.format("kafka").option("kafka.bootstrap.servers","localhost:9092").option("subscribe=test").load()
반응형