如何通过 Spark 属性 (Spark 1.6) 在 spark-shell 中启用或禁用 Hive 支持?
How to enable or disable Hive support in spark-shell through Spark property (Spark 1.6)?
是否有任何配置 属性 我们可以将其设置为通过 spark-shell 在 spark 1.6 中显式禁用/启用 Hive 支持。我试图通过
获取所有 sqlContext 配置属性
sqlContext.getAllConfs.foreach(println)
但是,我不确定 属性 实际上需要 disable/enable 配置单元支持。或者还有其他方法吗?
您可以通过创建 spark 会话启用配置单元支持,但仅限于 spark >=2.0:
val spark = SparkSession
.builder()
.appName("Spark Hive Example")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate()
在这里您可以阅读如何通过更改 hive-site.xml、spark-defaults.conf 中的 hive 和 spark 属性在 spark 上配置 hive:https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started - 它必须与 spark 一起使用1.6.1
Spark >= 2.0
Enable and disable of Hive context is possible with config
spark.sql.catalogImplementation
Possible values for spark.sql.catalogImplementation
is
in-memory or hive
SPARK-16013 Add option to disable HiveContext in spark-shell/pyspark
Spark < 2.0
这样的 Spark 属性 在 Spark 1.6 中不可用。
解决此问题的一种方法是删除与 Hive 相关的 jar,这将反过来禁用 Spark 中的 Hive 支持(因为当需要 Hive 类 可用时,Spark 具有 Hive 支持)。
是否有任何配置 属性 我们可以将其设置为通过 spark-shell 在 spark 1.6 中显式禁用/启用 Hive 支持。我试图通过
获取所有 sqlContext 配置属性sqlContext.getAllConfs.foreach(println)
但是,我不确定 属性 实际上需要 disable/enable 配置单元支持。或者还有其他方法吗?
您可以通过创建 spark 会话启用配置单元支持,但仅限于 spark >=2.0:
val spark = SparkSession
.builder()
.appName("Spark Hive Example")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate()
在这里您可以阅读如何通过更改 hive-site.xml、spark-defaults.conf 中的 hive 和 spark 属性在 spark 上配置 hive:https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started - 它必须与 spark 一起使用1.6.1
Spark >= 2.0
Enable and disable of Hive context is possible with config
spark.sql.catalogImplementation
Possible values for
spark.sql.catalogImplementation
is in-memory or hiveSPARK-16013 Add option to disable HiveContext in spark-shell/pyspark
Spark < 2.0
这样的 Spark 属性 在 Spark 1.6 中不可用。
解决此问题的一种方法是删除与 Hive 相关的 jar,这将反过来禁用 Spark 中的 Hive 支持(因为当需要 Hive 类 可用时,Spark 具有 Hive 支持)。