我在 hive 中创建了一个表,我想知道我的表是在哪个目录中创建的?我想知道路径...
10 回答
DESCRIBE FORMATTED my_table;
或者
DESCRIBE FORMATTED my_table PARTITION (my_column='my_value');
在 Hive 中有三种方式来描述表。
1) 要查看 Hive 表的表主信息,请使用describe table_name;命令
2) 要查看有关表的更多详细信息,请使用describe extended table_name;命令
3) 要以干净的方式查看代码,请使用describe formatted table_name; 命令查看所有信息。还以简洁的方式描述所有细节。
资源:Hive 面试技巧
您可以使用以下命令。
show create table <table>;
desc formatted <table>;
describe formatted <table>;
DESCRIBE FORMATTED <tablename>
或者
DESCRIBE EXTENDED <tablename>
我更喜欢格式化,因为它是更易于阅读的格式
要查看任何(内部或外部)表的结构和位置(目录),我们可以使用表的创建语句-
show create table table_name;
在 hive 0.1 中,您可以使用它SHOW CREATE TABLE
来查找 hive 存储数据的路径。
在其他版本中,没有好的方法可以做到这一点。
更新:
谢谢乔K
用于DESCRIBE FORMATTED <table>
显示表信息。
ps:这里不支持database.tablename。
除了 pensz answer,您还可以使用以下方法获取更多信息:
DESCRIBE EXTENDED my_table;
或者
DESCRIBE EXTENDED my_table PARTITION (my_column='my_value');
所有HIVE
托管表都存储在以下HDFS
位置。
hadoop fs -ls /user/hive/warehouse/databasename.db/tablename
如果您使用Hue,您可以在 Metastore 应用程序中浏览表,然后单击“查看文件位置”:这将在其目录中打开 HDFS 文件浏览器。
如果您没有特别提到您的位置,请在“默认”目录中。
您可以使用 describe 和 describe extended 来了解表结构。