我已在本地系统上下载了hive安装,并将hive-site.xml复制到Spark conf目录中。我尝试使用spark shell在Hive上下文中创建托管表。
我已将以下属性放在hive-site.xml中(存在于spark的conf目录中):
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
此外,我已将HADOOP_HOME放入spark-env.sh:
export HADOOP_CONF_DIR=/opt/hadoop/conf
根据Hive文档,配置单元仓库应存储在HDFS中,但仓库存储在本地驱动器(/ user / hive / warehouse)中。 请帮助我理解为什么Hive没有在HDFS中存储仓库目录。
答案 0 :(得分:0)
请使用2.0.2定义您的Spark依赖项
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.0.2"
然后您可以使用hive.metastore.warehouse.dir
或spark.sql.warehouse.dir
设置Spark仓库并指向其他Hive表所在的HDFS。