附加:
- DistributeFileSystem继承自org.apache.hadoop.fs.FileSystem,提供了HDFS文件系统相关事物操作,如对文件、目录、权限等元数据信息的增删改查操作。
- DFSDataInputStream和DFSDataOutputStream提供了读写HDFS文件的输入输出流。
1.flush():将输出流中缓存的数据传递到操作系统的内核缓冲区中。
2.sync():强制所有内核缓冲区中的数据写入物理存储设备中。
全排序:
1.归并排序:Map阶段,每个Map Task进行局部排序(自动完成);Reduce阶段,启动一个Reduce Task进行全局排序(瓶颈所在)。
2.TotalOrderPartitioner:(1)在client端通过hadoop自带的采样算法对大文件进行采样生成样本文件,从样本文件得到分区间隔值(个数等于reduce数目-1),Map阶段通过和分区间隔值比对,得到该值所属的区间。这样就保证map的输出有序,reduce的输出有序,按照分区间隔值拼接既可保证全局有序。
应用:HBase以Region为单位划分数据,Region内部数据有序(按rowkey排序),Region之间有序。