【问题标题】:How to read multiple Kafka topics with Spark into seperate Dataframes如何使用 Spark 将多个 Kafka 主题读取到单独的数据帧中
【发布时间】:2020-12-09 22:31:06
【问题描述】:

我正在向 2 个名为“akr”和“akr2”的 afka 主题发布数据。如何在单独的数据框中读取它们?

【问题讨论】:

    标签: apache-spark apache-kafka kafka-consumer-api spark-kafka-integration


    【解决方案1】:

    根据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 操作,就会使用上述两个主题的数据。

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 2020-09-18
      • 2021-08-21
      • 1970-01-01
      • 2021-06-11
      • 2016-05-27
      • 1970-01-01
      • 2023-03-29
      • 2023-03-25
      相关资源
      最近更新 更多