MapReduce阶段,map中key面向文章的偏移量=上一行面向文章的偏移量+本行相对于上一行的偏移量+本单词相对于本行的偏移量。 这个key为本单词相对于文章的偏移量 这个是MapReduce中map的输出,调用context的write方法,前边对应的是key,后边对应的是value的值。 在方法被调用的时候,方法中参数的传递有两种:值传递和应用传递 应用传递,传递的是地址 以上这种是值传递,外部的值不会跟着内部的值的变化而变化的 int a=3; { a=5 } a=3 //方法的实现体中对a进行重新赋值 //外部的a=3不会随着内部a=5的变化而变化的 int a=3; { *a=5 } a=5 //内部的a传递的是外部的a的应用地址 Integer a=new Integer a { a=5 } a=5 //这种传递是应用传递,传递的是堆内存中对象的应用地址 这种就是应用传递了。 放在这个地方是为了避免频繁地GC 输入数据集由map映射成中间数据集,也就是映射成了(K,V)键值对的形式 中间数据集最终交给reduce去完成 reduce端从map端拉取数据,reduce的输入来自map的输出 map端完成的是计算向数据移动的过程,map的输出会存在map的主机,供reduce从map端拉取数据的,也就是抽象的名词叫做shuffle,也就是reduce端数据向计算移动的过程,而map端完成的是计算向数据移动的过程。 reduce端完成的是数据向计算移动的过程

  

MapReduce中源码分析(map端的过程)相关推荐

  1. netty 5 alph1源码分析(服务端创建过程)

    研究了netty的服务端创建过程.至于netty的优势,可以参照网络其他文章.<Netty系列之Netty 服务端创建>是 李林锋撰写的netty源码分析的一篇好文,绝对是技术干货.但抛开 ...

  2. MyBatis 源码分析 - SQL 的执行过程

    本文速览 本篇文章较为详细的介绍了 MyBatis 执行 SQL 的过程.该过程本身比较复杂,牵涉到的技术点比较多.包括但不限于 Mapper 接口代理类的生成.接口方法的解析.SQL 语句的解析.运 ...

  3. MyBatis 源码分析 - 映射文件解析过程

    1.简介 在上一篇文章中,我详细分析了 MyBatis 配置文件的解析过程.由于上一篇文章的篇幅比较大,加之映射文件解析过程也比较复杂的原因.所以我将映射文件解析过程的分析内容从上一篇文章中抽取出来, ...

  4. 源码通透-mybatis源码分析以及整合spring过程

    源码通透-mybatis源码分析以及整合spring过程 mybatis源码分析版本:mybaits3 (3.5.0-SNAPSHOT) mybatis源码下载地址:https://github.co ...

  5. Java设计模式——工厂模式讲解以及在JDK中源码分析

    需求:便于手机种类的扩展 手机的种类很多(比如HuaWeiPhone.XiaoMiPhone等) 手机的制作有prepare,production, assemble, box 完成手机店订购功能. ...

  6. android6.0源码分析之Activity启动过程

    Activity最为Android开发者最熟悉的组件,由ActivityManagerService服务进行调度管理,而ActivityManagerService的启动过程在activitymana ...

  7. Java容器 | 基于源码分析Map集合体系

    一.容器之Map集合 集合体系的源码中,Map中的HashMap的设计堪称最经典,涉及数据结构.编程思想.哈希计算等等,在日常开发中对于一些源码的思想进行参考借鉴还是很有必要的. 基础:元素增查删.容 ...

  8. HBase源码分析:HTable put过程

    HBase版本:0.94.15-cdh4.7.0 在 HBase中,大部分的操作都是在RegionServer完成的,Client端想要插入.删除.查询数据都需要先找到相应的 RegionServer ...

  9. Spring源码分析4---IOC加载过程补充总结

    原文出自:http://cmsblogs.com IOC 之 获取验证模型 DTD 与 XSD 的区别 DTD(Document Type Definition),即文档类型定义,为 XML 文件的验 ...

最新文章

  1. 【书籍下载链接】_2_第二轮_计算机专业书籍
  2. 最大和 -- 最大子矩阵
  3. mybatis高级查询,批量新增
  4. Docker run 命令 参数说明
  5. FPGA入门基础介绍
  6. 简单封装POI导出excel
  7. 让SecureCRT vi中显示多色彩
  8. 【汇编】JMP跳转指令的指令长度、直接转移与间接转移、段内跳转与段间跳转
  9. Azure角色管理技巧和工具
  10. 学hadoop需要什么基础
  11. 用计算机播放cd,电脑上怎么放光盘_播放CD的方法步骤
  12. SPA(单页面应用)的理解
  13. Windows Sockets错误码方案
  14. 棱镜-分布式实时计算的跟踪校验系统
  15. java大文件pdf水印_java – 如何扩展PDF的页面大小以添加水印?
  16. Opencv配置常见问题:
  17. 【C语言学习笔记】SWAP函数详解
  18. vscode使用vetur格式化代码
  19. 密钥格式标准PKCS,X.509
  20. iPhoneX安全区域与H5引发的问题(Safe Area)

热门文章

  1. 「编程面试题库」,大佬开发的一款小程序~
  2. 数据结构与算法之递归系列
  3. OpenCV-图像的基本处理-02
  4. python的就业方向有哪些城市_以就业为目标,Python有哪些方向值得学?
  5. ajax异步日历,用AJAX自定义日历(示例代码)
  6. failed to find romfile vgabios-stdvga.bin
  7. nginx 目录讲解
  8. vagrant boxes
  9. Aspose Cells 控件如何实现数据过滤(附代码和下载地址)
  10. .net工程师至少要懂的东西