Hive -where是存储的表信息

时间:2016-11-23 09:04:16

标签: hive

我在HIVE中创建并插入表格,文件在HDFS上创建,一些在外部存储S3上创建

假设我创建了10个表,Hive中是否有任何系统表,我可以在其中找到用户创建的表信息??? (例如在Teradata中我们有DBC.tablesv,它包含所有用户定义表的信息)

3 个答案:

答案 0 :(得分:1)

您可以在hive-site.xml文件中找到您的Metastore配置的位置 它的通常位置在/ etc / hive / {$ hadoop_version} /或/ etc / hive / conf /。下 grep for“hive.metastore.uris”或“javax.jdo.option.ConnectionURL”以查看您用于Metastore的数据库。凭证也应该在那里 例如,如果您的Metastore在MySQL服务器上,则可以运行诸如
的查询 SELECT * FROM TBLS;
SELECT * FROM PARTITIONS;

答案 1 :(得分:0)

您无法在Hive中查询(如在SELECT ... FROM ...中)元数据 但是,您确实有显示该信息的组合,例如show databasesshow tablesdesc MyTable等。

答案 2 :(得分:0)

我不确定我100%理解你的问题,如果你的意思是关于创建表的信息,比如查询本身,有关HDFS的位置,表属性等,你可以试试:

SHOW CREATE TABLE <table>;

如果需要检索列名称和数据类型的列表,请尝试使用:

DESCRIBE <table>;
相关问题