【发布时间】:2020-12-09 22:31:06
【问题描述】:
我正在向 2 个名为“akr”和“akr2”的 afka 主题发布数据。如何在单独的数据框中读取它们?
【问题讨论】:
标签: apache-spark apache-kafka kafka-consumer-api spark-kafka-integration
我正在向 2 个名为“akr”和“akr2”的 afka 主题发布数据。如何在单独的数据框中读取它们?
【问题讨论】:
标签: apache-spark apache-kafka kafka-consumer-api spark-kafka-integration
根据Spark + Kafka Integration Guide 并假设您计划使用结构化流处理它们,您可以定义所需的两个数据帧,如下所示:
val df1 = spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", "host1:port1,host2:port2")
.option("subscribe", "akr")
.load()
.selectExpr("CAST(key AS STRING)", "CAST(value AS STRING)")
val df2 = spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", "host1:port1,host2:port2")
.option("subscribe", "akr2")
.load()
.selectExpr("CAST(key AS STRING)", "CAST(value AS STRING)")
只要您在 Dataframes 上有一些 Spark 操作,就会使用上述两个主题的数据。
【讨论】: