【发布时间】:2018-09-01 08:43:38
【问题描述】:
我正在尝试运行以下代码以将文件作为数据帧读取到 Kafka 主题(用于 Spark Streaming)上,该主题是通过 Eclipse IDE 开发的,使用 Scala,通过使用 spark-submit 在服务器上运行瘦 jar 来适当地定义模式(没有调用任何其他软件包)并且在下面出现错误。尝试了基于spark.read.option.schema.csv类似错误在互联网上研究的建议,但没有成功。
有人在使用 readStream 选项时遇到过类似的 Spark Streaming 问题吗?
期待听到您的回复!
错误:
Exception in thread "main" java.lang.RuntimeException: Multiple sources found for csv (com.databricks.spark.csv.DefaultSource15, org.apache.spark.sql.execution.datasources.csv.CSVFileFormat), please specify the fully qualified class name.
代码:
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).csv("server_path") //does not resolve error
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).format("com.databricks.spark.csv").csv("server_path") //does not resolve error
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).csv("server_path") //does not resolve error
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).format("org.apache.spark.sql.execution.datasources.csv").csv("server_path") //does not resolve error
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).format("org.apache.spark.sql.execution.datasources.csv.CSVFileFormat").csv("server_path") //does not resolve error
val csvdf = spark.readStream.option("sep", ",").schema(userSchema).format("com.databricks.spark.csv.DefaultSource15").csv("server_path") //does not resolve error
【问题讨论】:
-
请添加输入数据的“小”样本并显示 userSchema 是如何定义的。
-
数据为:1,Nightmare Before Christmas,1993,3.9,4568 2,The Mummy,1932,3.5,4388 3,Orphans of the Storm,1921,3.2,9062 4,The Object of Beauty ,1991,2.8,6150 的架构在代码中定义为 val userSchema = StructType(Array(StructField("id", StringType), StructField("name", StringType), StructField("year", StringType), StructField("rating ", StringType), StructField("duration", StringType)))
-
请将您的新信息放入您的问题中。
标签: eclipse scala csv apache-spark spark-streaming