我们可以列出 hive 中指向 hdfs 中特定位置的表吗?
Posted
技术标签:
【中文标题】我们可以列出 hive 中指向 hdfs 中特定位置的表吗?【英文标题】:Can we list out tables in hive pointing to a particular location in hdfs? 【发布时间】:2019-02-07 08:58:30 【问题描述】:示例: hive>显示位置为“/user/hive/warehouse/data”的表;
样本输出:
Sample1(表名) 样本2
【问题讨论】:
【参考方案1】:您可以使用 hadoop fs -ls 命令获取它。
hadoop fs -ls /path/to/data/dbname.db/managed
您可以使用命令show create table tablename
获取路径 - /path/to/data
例子-
-bash-4.1$ hadoop fs -ls /PRJ/data/db/DBNAME.db/managed | head -5
Found 784 items
drwxr-xr-x - admin admin 1 2018-12-11 05:16 /PRJ/data/db/DBNAME.db/managed/upc
drwxr-xr-x - admin admin 1 2018-06-07 03:07 /PRJ/data/db/DBNAME.db/managed/aisle_pos_text_dim
drwxr-xr-x - admin admin 252 2019-02-06 16:42 /PRJ/data/db/DBNAME.db/managed/alternate_receiving_wh_dim
drwxr-xr-x - admin admin 218 2019-02-06 15:44 /PRJ/data/db/DBNAME.db/managed/backhaul_indicator_dim
【讨论】:
但我只有 hdfs 位置。我没有表名。【参考方案2】:在您的数据节点上使用以下命令查看正在那里创建的所有表。
hdfs dfs -ls <your_hdfs_loaction_path>
当您在 hive 中创建数据库时,它会在配置的位置创建一个目录。在此目录中,您将拥有在 hive 中创建的所有外部/托管表的子目录。
以上命令将列出 HDFS 位置上的所有目录(表)。 如果您可以访问 Ambari,那么您也可以浏览 Ambari。
【讨论】:
以上是关于我们可以列出 hive 中指向 hdfs 中特定位置的表吗?的主要内容,如果未能解决你的问题,请参考以下文章