我在hive中有分区表。所以我想在hadoop hdfs中看到目录结构?
从documentation,我找到了以下命令
hadoop fs -ls /app/hadoop/tmp/dfs/data/
和/app/hadoop/tmp/dfs/data/
是我的数据路径。但是这个命令返回
ls:无法访问/ app / hadoop / tmp / dfs / data /:没有这样的文件或 。目录
我错过了什么吗?
答案 0 :(得分:1)
除非我弄错了,否则您似乎正在寻找可能在属性hadoop.tmp.dir
中定义的临时目录。这是一个本地目录,但是当您执行hadoop fs -ls
时,您正在查看HDFS中可用的文件,因此您将看不到任何内容。
由于您正在寻找或Hive目录,您正在hive-site.xml中寻找以下属性:
hive.metastore.warehouse.dir
默认值为/user/hive/warehouse
,因此如果您尚未更改此属性,则可以执行以下操作:
hadoop fs -ls /user/hive/warehouse
这应该会显示你的表目录。
答案 1 :(得分:0)
检查core-site.xml文件和hdfs-site.xml中是否正确设置了tmp目录。 如果没有设置,那么操作系统的临时目录(ubuntu中的tmp和windows中的%temp%)将被设置为hadoop tmp文件夹,因此重启计算机后可能会丢失数据。在xml中设置此dfs.tmp.dir并重新启动群集。它会工作正常。 即使在此之后如果没有解决,请提供有关分区表代码和表数据的更多详细信息。