hir*_*ryu 1 apache-spark apache-spark-2.0
我刚刚从 Spark 2.0.2 升级到 Spark 2.1.0(通过下载 Hadoop 2.7 及更高版本的预构建版本)。没有安装 Hive。
spark-shell 启动后,会在启动位置创建metastore_db/文件夹和derby.log文件,以及一堆警告日志(在以前的版本中没有打印出来)。
仔细检查调试日志显示 Spark 2.1.0 尝试初始化 a HiveMetastoreConnection:
17/01/13 09:14:44 INFO HiveUtils: Initializing HiveMetastoreConnection version 1.2.1 using Spark classes.
Spark 2.0.2 的类似调试日志没有显示HiveMetastoreConnection.
这是预期的行为吗?是否与spark.sql.warehouse.dir现在会话之间共享的静态配置有关?我如何避免这种情况,因为我没有安装 Hive?
提前致谢!
从 Spark 2.1.0文档页面:
hive-site.xml没有配置时,context会在当前目录自动创建metastore_db,并创建spark.sql.warehouse.dir配置的目录,默认为Spark应用当前目录下的目录spark-warehouse开始了。请注意,自 Spark 2.0.0 起,hive-site.xml 中的 hive.metastore.warehouse.dir 属性已弃用。相反,使用 spark.sql.warehouse.dir 指定数据库在仓库中的默认位置。
由于您没有安装 Hive,您将没有 hive-site.xml 配置文件,并且这必须默认为当前目录。
如果您不打算HiveContext在 Spark 中使用,您可以从源代码重新安装 Spark 2.1.0,使用 Maven 重建它并确保省略-Phive -Phive-thriftserver启用 Hive 支持的标志。
| 归档时间: |
|
| 查看次数: |
5836 次 |
| 最近记录: |