Hadoop的Mapreduce中Mapper的key和Map的key的区别

问题:我们知道Mapreduce 是以键值对的方式进行输入输出的,分为Mapper <k,v,k,v>和Reduce<k,v,k,v> ,

那么这里的<Key,Value>和JAVA的import java.util.HashMap的Map集合<Key,Value>是不是一个概念呢?

我们知道JAVA的Map键值对的key是不可以重复的,而Mapredue的key是不可避免会重复,所以要区分两者。。

经老师指点:

Map集合中key不是不能重复的吗---------这个Map指的是JAVA里面的import java.util.HashMap这个Map,这里是数据结构,key相同的话,value会覆盖。

那么Mapper的特性是否也是这样---------这里的Mapper是import org.apache.hadoop.mapreduce.Mapper;  这里指的是mapreduce框架里面的map阶段。context.write(word, one)表示那个key累加一次。key是可以重复的。不然wordcount,也统计不出次数了。

这两个完全不是一回事。

Hadoop的Mapreduce中Mapper的key和Map的key的区别相关推荐

  1. Hadoop在MapReduce中使用压缩详解

    Hadoop对于压缩格式的是透明识别,我们的MapReduce任务的执行是透明的,Hadoop能够自动为我们将压缩的文件解压,而不用我们去关心. AD:51CTO学院:IT精品课程在线看! Hadoo ...

  2. MapReduce中源码分析(map端的过程)

    MapReduce阶段,map中key面向文章的偏移量=上一行面向文章的偏移量+本行相对于上一行的偏移量+本单词相对于本行的偏移量. 这个key为本单词相对于文章的偏移量 这个是MapReduce中m ...

  3. java map byte[],java中byte数组不能作为map的key使用

    今天在使用java写代码的时候,用byte数组作为map的key来使用,发现在遍历的时候get到之前传进去的值总是为空,很是困惑,后来查了下资料发现java中的字节数组不能直接作为map的key来使用 ...

  4. Java中List,Set和Map详解及其区别和使用场景(转)

    Java中的集合包括三大类,它们是Set(集).List(列表)和Map(映射),它们都处于java.util包中,Set.List和Map都是接口,它们有各自的实现类.Set的实现类主要有HashS ...

  5. java mapreduce示例,hadoop入门-MapReduce实例(一)

    本机开发mapreduce,然后打包上传到hadoop服务器 一.入门wordcount 1.新建maven项目,pom.xml内容: xmlns:xsi="http://www.w3.or ...

  6. new Map()详细介绍 map .set(key,value)map.sizemap.get(key)map.has(key)map.delete(key)map.clear()

    1.let map = new Map();     2.let map = new Map([[key,value],[key,value]]); //默认带初始化参数的定义 理解就是:new Ma ...

  7. Hadoop大数据——mapreduce中的Combiner/序列化/排序初步

    mapreduce中的Combiner (1)combiner是MR程序中Mapper和Reducer之外的一种组件 (2)combiner组件的父类就是Reducer (3)Combiner和red ...

  8. Hadoop学习笔记—11.MapReduce中的排序和分组

    Hadoop学习笔记-11.MapReduce中的排序和分组 一.写在之前的 1.1 回顾Map阶段四大步骤 首先,我们回顾一下在MapReduce中,排序和分组在哪里被执行: 从上图中可以清楚地看出 ...

  9. MapReduce 示例:减少 Hadoop MapReduce 中的侧连接

    摘要:在排序和reducer 阶段,reduce 侧连接过程会产生巨大的网络I/O 流量,在这个阶段,相同键的值被聚集在一起. 本文分享自华为云社区<MapReduce 示例:减少 Hadoop ...

最新文章

  1. Linux信号列表(sigint,sigtstp..)
  2. rust实战入门到进阶(2)
  3. Django 3.2.5博客开发教程:HelloWorld欢迎页面
  4. 【6.1】python中的变量是什么
  5. 初探Golang(3)-数据类型
  6. Web前端工作笔记004---js--webSocket简单介绍和使用方法
  7. 拼题a答案c语言计算整数各位数字之和,这是小白刷的基础题,跪求大佬帮忙!!!题目:读入一个自然数n...
  8. centos6.8中zabbix3.0.X的部署
  9. 2022Java微服务最全面试题集
  10. CMake is re-running because generate.stamp.list is missing.
  11. 关于一级域名和二级域名跨域的解决方案
  12. 人脸特征点定位方法DEST, 基于VS2019+OpenCV3.4.6
  13. 如何维持手机电池寿命_如何延长手机电池寿命?总有些事你不知道
  14. ctf比赛涉及的方面以及所需知识
  15. vue 2.6 keep-alive 不生效问题记录点
  16. openid无效什么意思_通过微信公众号认识一个漂亮的女朋友是什么体验?
  17. Jini 能给您带来什么
  18. 【linux运维】还在为访问服务器工具犯愁吗?这六款Linux常用远程连接工具你肯定得知道
  19. 【兼容】兼容IE8浏览器
  20. 程序烧录器STLINK_V2CMSIS_DAP_V2制作——DIY方案分享

热门文章

  1. pcl里面的法线估计
  2. 鸿蒙系统的变化,鸿蒙系统没变化的背后
  3. 卷积神经网络原理_人脸识别背后,卷积神经网络的数学原理原来是这样的
  4. ImportError: cannot import name 'pyopenpose' from 'openpose'错误解决方法
  5. mysql突然出现慢sql_Mysql开启慢SQL并分析原因
  6. 【文章】浅相遇,薄相知,淡相守,终难忘
  7. TypeError: ‘NoneType‘ object is not callable--python报错解决办法
  8. 通过NGINX location实现一个域名访问多个项目
  9. 深度学习入门|第5章 误差反向传播法(二)
  10. 算法提高 合并石子【动态规划】