我在hive中创建了一张表,我想知道我的表是在哪个目录下创建的?我想知道路径...
DESCRIBE FORMATTED my_table;
或
DESCRIBE FORMATTED my_table PARTITION (my_column='my_value');
在 Hive 中有 3 种描述表的方式
要查看 Hive 表的表主要信息,请使用 describe table_name; 命令
要查看有关表的更多详细信息,请使用 describe extended table_name; 命令
要以干净的方式查看代码,请使用 describe formatted table_name; 命令查看所有信息。还以干净的方式描述所有细节。
您可以使用以下命令。
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 的回答,您还可以使用以下方法获取更多信息:
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 来了解表结构。