在 Spark 上下文中禁用配置单元(OrcFileFormat 不是子类型)

Mez*_*Mez 5 java scala apache-spark

我在 Spark 应用程序中遇到以下异常,并且我仅使用 SparkSQL 在数据框中运行过滤器。所以我想禁用配置单元支持。

Exception in thread "main" java.util.ServiceConfigurationError: org.apache.spark.sql.sources.DataSourceRegister: Provider org.apache.spark.sql.hive.orc.OrcFileFormat not a subtype
Run Code Online (Sandbox Code Playgroud)

你能做这个吗?当涉及到 Scala 和 Spark 时,我使用以下版本。

<properties>
    <spark.version>2.2.1</spark.version>
    <scala.version>2.11.8</scala.version>
    <scala.major.version>2.11</scala.major.version>
</properties>
Run Code Online (Sandbox Code Playgroud)

我尝试将属性设置spark.sql.catalogImplementationin-memory,但这也没有帮助。这就是我当前设置 Spark 会话并传递配置的方式。

        val sparkConf = new SparkConf
sparkConf.set("spark.sql.catalogImplementation","in-memory")
sparkConf.set("spark.sql.orc.enabled","false")

// Configure generic spark application
val spark = SparkSession
  .builder()
  .config(sparkConf)
  .master("local[*]")
  .getOrCreate()
Run Code Online (Sandbox Code Playgroud)