カフカ構造化ストリームは、静的データフレームと結合できます。あなたがデータフレームのスキーマを提供する必要が詠唱中にデータフレームの構造は、複雑な場合、ストリームとしてカフカから
val spark = SparkSession
.builder
.appName("kafka-reading")
.getOrCreate()
val df = spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", "localhost:9092")
.option("startingOffsets", "latest")
.option("subscribe", topicName)
.load()
.selectExpr("CAST (key AS STRING)", "CAST (value AS STRING)").as[(String, String)]
を読むには
val staticDf = spark.read. ... // read from Cassandra
val streamingDf = spark.readStream. ... // read from stream
// example of join to get information from both Cassandra and stream
streamingDf.join(staticDf, "type") // inner equi-join with a static DF
streamingDf.join(staticDf, "type", "right_join") // right outer join with a static DF