我正在使用Hadoop2.7.3和hive2.1.1。
我在HDFS中有8-9个文件。我创建了一个内部的蜂巢表。我首先在那个表中加载了这8个文件中的一个。对这些数据做了些操作。
之后,我通过覆盖到表中加载了第二个文件。
load data inpath '/path/path1/first.csv' into table ABC;
load data inpath '/path/path1/second.csv' overwrite into table ABC;对第二次数据做了一些操作。
然后,通过使用"overwrite“加载第三个文件等,直到最后一个文件。
现在,我看到所有的文件都不在原来的位置。另外,在/user/hive/仓库/ABC上,只有最后一个文件在那里。
以前的文件都去哪儿了?他们是不是因为覆盖到蜂箱表而迷路了?我做了"hdfs dfs -ls -R / | grep "filename“,但找不到我的文件。
发布于 2017-03-08 09:59:31
LOAD DATA INPATH将将文件从源HDFS路径移动(而不是复制)到表仓库路径。
OVERWRITE将删除表中已经存在的文件(如果启用HDFS垃圾,将文件移动到Trash),并将其替换为路径中给定的文件。
发布于 2017-03-08 09:58:58
LOAD DATA LOCAL INPATH 复制文件。
LOAD DATA INPATH 移动文件。
overwrite 在移动新文件之前删除现有文件。
https://stackoverflow.com/questions/42667809
复制相似问题