首页 文章

如何通过Spark属性(Spark 1.6)启用或禁用spark-shell中的Hive支持?

提问于
浏览
2

是否有任何配置属性我们可以将其设置为在spark 1.6中通过spark-shell禁用/启用Hive支持 . 我试图获取所有sqlContext配置属性,

sqlContext.getAllConfs.foreach(println)

但是,我不确定实际上需要哪个属性来禁用/启用配置单元支持 . 或者还有其他办法吗?

2 回答

  • 3

    您可以通过创建spark会话来启用配置单元支持,但仅限于spark> = 2.0:

    val spark = SparkSession
      .builder()
      .appName("Spark Hive Example")
      .config("spark.sql.warehouse.dir", warehouseLocation)
      .enableHiveSupport()
      .getOrCreate()
    

    在这里,您可以通过更改hive-site.xml中的hive和spark属性来阅读如何在spark上配置hive,spark-defaults.conf:https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started - 它必须与spark 1.6.1一起使用

  • 1

    Spark> = 2.0使用config spark.sql.catalogImplementation启用和禁用Hive上下文spark.sql.catalogImplementation的可能值是内存或配置单元SPARK-16013添加选项以禁用spark-shell / pyspark中的HiveContext


    Spark <2.0

    这样的Spark属性在Spark 1.6中可用 not .

    解决这个问题的一种方法是删除与Hive相关的jar,这些jar会反过来禁用Spark中的Hive支持(因为Spark在需要Hive类时可以使用Hive支持) .

相关问题