数据本地化: 数据存储与数据计算都在同一个节点上进行
1.当JobTracker接收到MR任务之后,会去访问NameNode获取要处理的文件信息
2.NameNode将文件信息(包括文件大小,存储位置,切块信息)返回给JobTracker
3.JobTracker收到文件信息之后会将文件进行切片(split中只包含切片信息比如切片起点,切片大小位置等,不包含实际数据),一般习惯上,会将切片和切块设置的一样大。每一个切片会分给一个MapTask
4.JobTracker会把MapTask分发到TaskTracker上来执行。在分发的时候,哪一个DataNode上有对应的Block,那么就把MapTask分发到这个节点上 - 数据本地化
5.数据本地化的目的:减少对网络资源的消耗