2017-05-19 3 views
0

Spark 구조화 된 스트리밍의 다중 파티션에 대해 JSON을 어떻게 구성합니까? 아래 예제는 하나의 파티션에만 붙여 넣었습니다. 당신의 도움을 주셔서 감사합니다.토픽의 여러 파티션에 대한 Spark Structured Streaming

spark.readStream().format("kafka") 
     .option("kafka.bootstrap.servers", "****") 
     .option("subscribePattern", "****.*") 
     .option("startingOffsets", "{\"Topic01\": {\"0\":250, \"1\": -1}}").load(); 

답변

0

좋아하는 JSON 라이브러리를 사용하여 문자열을 만들 수 있습니다. 다음은 json4s의 예입니다.

scala> import org.json4s.jackson.Serialization 
import org.json4s.jackson.Serialization 

scala> import org.json4s.NoTypeHints 
import org.json4s.NoTypeHints 

scala> implicit val formats = Serialization.formats(NoTypeHints) 
formats: org.json4s.Formats{val dateFormat: org.json4s.DateFormat; val typeHints: org.json4s.TypeHints} = [email protected] 

scala> val offsets = Map("topic1" -> Map("0" -> 1, "1" -> -1, "2" -> -2), "topic2" -> Map("0" -> 0, "1" -> -1)) 
offsets: scala.collection.immutable.Map[String,scala.collection.immutable.Map[String,Int]] = Map(topic1 -> Map(0 -> 1, 1 -> -1, 2 -> -2), topic2 -> Map(0 -> 0, 1 -> -1)) 

scala> Serialization.write(offsets) 
res0: String = {"topic1":{"0":1,"1":-1,"2":-2},"topic2":{"0":0,"1":-1}} 
관련 문제