2.而对于mapreduce来说,map的输入默认是一个输入文件对应一个map任务,所以如果不做特殊处理在使用mapreduce处理这些小文件时会一个小文件产生一个map。这样的话每个map只处理一个小文件,会造成很大的资源浪费,同时也会降低mapreduce的执行效率。
以上是我自己的理解,可能还有其他的原因。建议去网上自行搜索一些文章阅读。
1、存储文件的时候需要指定存储的路径,这个路径是hdfs的路径。而不是哪个节点的某个目录。比如./hadoop?fs?-put?localfile?hdfspat
一般操作的当前路径是/user/hadoop比如执行./hadoop?fs?-ls?.实际上就相当于./hadoop?fs?-ls?/user/hadoop
2、hdfs本身就是一个文件系统,在使用的时候其实不用关心具体的文件是存储在哪个节点上的。如果需要查询可以通过页面来查看,也可以通过api来实现查询。
纯洁已成过去