Hadoop 学习笔记 05 之 MapReduce 浅析

简介:

每一项新技术都是为了解决某个痛点,随着数据量指数型得增长,面对海量的数据技术,虽然存储用 Hadoop 的 HDFS 文件系统解决,但没初加工的数据如同一堆刚从矿场运出来的矿砂,价值度低。

那么该如何处理海量的数据呢,比如分析某个时间段订单量 / 某个地区的几十年的温度?为了解决这个问题,不得不介绍 Map reduce 这个框架。

一 、Mapreduce 简单介绍

官话:MapReduce 是一个分布式计算模型框架,由两个阶段组成:Map和Reduce。

主要用于搜索领域,解决海量数据的计算问题,只需要实现 Map() 和 Reduce() 两个函数即可。

通俗理解:
好比家里一堆家务活,全部给一个人做可能一整天都弄不完,于是分工,老二(Map)负责清洗碗筷,老幺(Map)负责拖地,于是很快就搞定了;老大负责检查(Reduce 汇总)。这就是MapReduce 把任务分解再汇总。

二、Mapreduce 工作(流程)原理

我分两个版本解读,第一个是正式版,第二个是故事版

正式版例子

中文版
英文版

粗略的讲,MapReduce 的工作流程分为:map task( Map 任务) 与 reduce task(Reduce 任务)。

map task:
1、把一个(或多个)需要处理的文件(block) 按 spill 切分并启动对应 map , 然后输出到一个环形内存缓冲区,用于存储任务的输出。

当内存缓冲区到阙值(0.8)时,会把内容写到磁盘的指定目录下的新建的一个溢出写文件。

注意:一个 spill (切片)对应一个 map task。,map task 的并发数量是由 spill 决定的。

2、写磁盘前,要 partition (分区),sort (排序)。如果有 combiner(相同 key 的 map ),combine(合并) 排序后数据。

3 、等最后记录写完,合并全部溢出写文件为一个分区且排序的文件。

reduce task
1、Reducer 通过 Http 方式得到输出文件的分区。

2、TaskTracker 为分区文件运行 Reduce 任务。复制阶段把 Map 输出的复制到 Reducer 的内存或磁盘。一个 Map 任务完成,Reduce 就开始复制输出。

3 、排序阶段合并 map 输出,然后走 Reduce 阶段。

故事版本
以生活的场景为例子,一个餐厅进了一批食材(input),不同的厨师去拿(Split)对应的食材切碎(Map),切碎之后就放到不同的机器上(烤箱 冷藏柜)(Shuffle 洗牌),然后顾客来会点不同的食物,服务员会给他们组装(Reduce),最后交给顾客(Output / Finalize)。

故事版

三 、应用场景

Map Reduce 就是一种分治思想,把大问题分解成小问题,各个击破,那么应用场景呢?

1、统计单词数
2、建立倒排索引
3、统计用户(手机号码)的流量
4、计算 URL 的访问频率
。。。。。。。。。。。

四、思考题:

Combiner / Partitioner 的作用是什么,应用场景是什么以及 Shuffler 的过程是怎么样的?

微信搜索公众号「一起学大数据呀」,里面有更多学习资料

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350