0

我正在使用 Hive 进行一些数据处理。但是,每当我启动 Hive-Shell 时,它都会在当前目录中创建一个元存储,并且我无法访问我在另一个目录中创建的表。这对我来说有点烦人,我已经进入特定目录,然后启动 Hive-Shell 来查看我的表。

我尝试在 hive-default.xml 中配置路径,但没有成功。

谢谢

4

2 回答 2

1

比使用 mysql 更好的选择是简单地修改 javax.jdo.option.ConnectionUrl。如果这是一个简单的开发环境,为什么不使用默认的 derby 呢?

默认值为:

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:derby:;databaseName=metastore_db;create=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
</property>

更改databaseName=metastore_dbdatabaseName=/users/me/.metastore_db

就是这样。

此外,有关这方面的更多信息,请参阅http://www.hiregion.com/2010/01/hive-metastore-derby-db.html

于 2013-05-03T13:21:49.600 回答
0

永远不要编辑 hive-default.xml,而是编辑 hive-site.xml。相关属性是 javax.jdo.option.ConnectionURL

您可能希望对 Metastore 使用 mysql 而不是 derby。关于这方面的一篇短文是http://blog.milford.io/2010/06/installing-apache-hive-with-a-mysql-metastore-in-centos/

于 2011-07-15T03:51:29.477 回答