spark读取parquet程序报错:
org.apache.spark.sql.AnalysisException: Multiple sources found for parquet (org.apache.spark.sql.execution.datasources.v2.parquet.ParquetDataSourceV2, org.apache.spark.sql.execution.datasources.parquet.ParquetFileFormat), please specify the fully qualified class name.
at org.apache.spark.sql.execution.datasources.DataSource$.lookupDataSource(DataSource.scala:720)
at org.apache.spark.sql.execution.datasources.DataSource$.lookupDataSourceV2(DataSource.scala:746)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:265)
at org.apache.spark.sql.DataFrameReader.parquet(DataFrameReader.scala:833)
at org.apache.spark.sql.DataFrameReader.parquet(DataFrameReader.scala:805)
解决方法其实都在后面写着了
”please specify the fully qualified class name."
也就是在读取的时候指定类就好
报冲突的代码
val res = spark.read.parquet(path.format(date))
改后成功的代码
val sourceData = spark.read
.format("org.apache.spark.sql.execution.datasources.v2.parquet.ParquetDataSourceV2")
.load(dataPath+date)