ITPub博客

首页 > 大数据 > Hadoop > Hadoop maptask 工作机制

Hadoop maptask 工作机制

Hadoop 作者:元亨利贞 时间:2023-10-02 14:05:19 0 删除 编辑

工作机制

  1. Read阶段:MapTask通过RecordReader解析输入InputSplit中的key/value。
  2. Map阶段:用户编写的map()函数处理key/value,生成新的key/value。
  3. Collect阶段:map()函数处理完成后,调用OutputCollector.collect()输出结果,生成的key/value被分区并写入环形内存缓冲区。
  4. Spill阶段:环形缓冲区满后,数据经过排序和可能的合并、压缩后写入本地磁盘的临时文件。此阶段包括:
    • 利用快速排序算法对数据进行排序,先按分区编号Partition排序,再按key排序。
    • 按分区编号将数据写入临时文件output/spillN.out。
    • 将分区数据的元信息写入内存索引数据结构SpillRecord。
  5. Merge阶段:所有数据处理完成后,MapTask将所有临时文件合并成一个大文件,保存到文件output/file.out中,并生成相应的索引文件output/file.out.index。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70024433/viewspace-2986834/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2022-11-21

  • 博文量
    383
  • 访问量
    247981