Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 试图理解结构化流媒体_Scala_Apache Kafka_Spark Streaming - Fatal编程技术网

Scala 试图理解结构化流媒体

Scala 试图理解结构化流媒体,scala,apache-kafka,spark-streaming,Scala,Apache Kafka,Spark Streaming,我不熟悉ApacheSpark,试图理解scala中ApacheKafka的结构化流媒体,但到目前为止,没有任何东西对我有利。基本上,我想从kafka发送JSON,使用spark结构化流媒体处理它,然后发送回kafka。我尝试了网站上给出的例子,但不起作用 这是我的密码: import org.apache.spark.sql._ import org.apache.spark.sql.functions._ import org.apache.spark.sql.types.StructTyp

我不熟悉ApacheSpark,试图理解scala中ApacheKafka的结构化流媒体,但到目前为止,没有任何东西对我有利。基本上,我想从kafka发送JSON,使用spark结构化流媒体处理它,然后发送回kafka。我尝试了网站上给出的例子,但不起作用

这是我的密码:

import org.apache.spark.sql._
import org.apache.spark.sql.functions._
import org.apache.spark.sql.types.StructType
import org.apache.spark.sql.types._
import org.apache.spark.sql.streaming.{OutputMode, Trigger}
object dataset_kafka {
  def main(args: Array[String]): Unit = {

    val spark = SparkSession
      .builder()
      .appName("kafka-consumer")
      .master("local[*]")
      .getOrCreate()

    import spark.implicits._

    spark.sparkContext.setLogLevel("WARN")

    val df = spark
      .readStream
      .format("kafka")
      .option("kafka.bootstrap.servers", "172.21.0.187:9093")
      .option("subscribe", "test")
      .load()

       df
      .selectExpr("CAST(key AS STRING)", "CAST(value AS STRING)")
      .writeStream
      .format("kafka")
      .trigger(Trigger.ProcessingTime("5 seconds"))
      .option("kafka.bootstrap.servers", "172.21.0.187:9093")
      .option("topic", "test1")
      .option("checkpointLocation", "/home/hduser/Desktop/tempo")
      .start()
      .awaitTermination()
  }
}
我哪里出了问题,有什么帮助吗

我以以下格式从卡夫卡发送json:

{"schema":"Hiren","payload":"123"}

我最近出版了一本技术资产选集,重点介绍ApacheSpark的结构化流媒体。其中一个博客关注结构化流媒体:也就是说,使用结构化流媒体API将数据从卡夫卡流到Spark

我强烈要求你看一看。请注意,只有Spark 2.2支持回写卡夫卡


欢迎来到SO!请参阅此处,了解如何发布一个很好的问题,一个可能不会被关闭的问题,甚至可能会得到回答:我的问题是否无效?您需要展示一些自己的代码,这些代码不起作用/您自己的一些努力。你所要求的是所谓的教程,正如你所说,我尝试了自己,但它不工作,请帮助我纠正我的错误