如果你在Spark里要访问Hive的数据,那么你就需要启动Spark和Hive的整合。默认情况下,Zeppelin 里的Spark 没有启动Hive整合,你需要做如下配置:

  • 将hive-site.xml 放到 SPARK_CONF_DIR下 (大部分情况下 SPARK_CONF_DIR 是 SPAKR_HOME/conf, 但有些环境下并不是这个目录,你需要自己查看环境变量 SPARK_CONF_DIR)
  • 启动 hive metastore,因为Spark 读写Hive数据的时候需要访问 hive metastore,当然在hive-site.xml里需要配置有关hive metastore的信息
  • 在Zeppelin里把Spark interpreter这个配置 zeppelin.spark.useHiveContext 设为true

当你做了如上配置后创建出来的sqlContext 和 SparkSession 就是都是启用Hive。
启动了Hive之后你就能看到hive里的表了,如下图
image.png

公众号 钉钉群

image.png image.png