我是Hadoop和Hive世界的新手。
我有一个奇怪的问题。当我在hive提示时工作。我创建了几个表,hive显示了这些表。
当我再次启动Hive终端“show tables;”退出Hive会话后没有显示任何表格!我可以在HDFS中的'/ user / hive / warehouse'中看到表格。
我做错了什么。你能帮帮我吗?
答案 0 :(得分:7)
BalduZ是对的。在$ HIVE_HOME / conf / hive-site.xml
中设置此项property name = javax.jdo.option.ConnectionURL
property value = jdbc:derby:; databaseName = / home / youruser / hive_metadata / metastore_db; create = true
下次您可以从任何目录位置运行配置单元。这将解决您的问题。
答案 1 :(得分:4)
我假设您使用的是默认配置,因此问题在于您调用hive开始工作,因为您需要从同一目录中调用它以查看您在上一个配置单元会话中创建的表。
例如,如果您在~/test/hive
时调用配置单元并创建一些表,并且下次使用配置单元时从~/test
启动它,您将看不到先前创建的表。最简单的解决方案是始终从同一目录启动配置单元。
但是,更好的解决方案是配置hive,以便它使用像MySQL这样的数据库作为Metastore。您可以找到如何执行此操作here。