基于Hadoop的Map/Reduce框架研究报告

Slides:



Advertisements
Similar presentations
教育部 1 教育部技職司 南區: 2010 年 11 月 5 日 北區: 2010 年 11 月 8 日 中區: 2010 年 11 月 9 日 產學攜手合作計畫 政策宣導.
Advertisements

104 年度環保小學堂 經費編列注意事項 會計室 : 丁子芸 中華民國 103 年 10 月 22 日 會計室 : 丁子芸 中華民國 103 年 10 月 22 日.
大数据基础技术和应用. 大纲 大数据概述 大数据基础技术 工程技术 策略技术 典型应用 我们处于数据爆炸的时代 数据库 文字记录 照片 线下数据信息化 网页数据 用户行为记录 数字图像 互联网 - 移动互联网 设备监控 智能家居 摄像头 传感器 地球上至今总共的数据量: 在 2006 年,个人用户才刚刚迈.
第5讲 索引构建 Index construction 授课人:高曙明
2010 信義房屋品牌經營策略.
觀舌知健康 第三課 蒲公英學會 蒲公英學會.
从生命伦理学角度 对转基因食品市场准入标准及道德评价标准的研究
市直单位财务明细信息表 填报说明 珠海市财政局 2013年12月 1.
感谢各位家长在百忙之中抽出时间参加本次家长会 !
班級:醫管3B 組別:第二組 組員:王品媛、郭雅瑄、謝淑玲、蔡孟蔙
2014届毕业生毕业论文与毕业实习动员 一、郑州航院毕业论文工作规定 二、法律系毕业论文工作安排 三、法律系毕业论文格式要求
第5章 排版的高级应用.
為什麼要讀書?.
第八讲 基于Hadoop的数据仓库Hive (PPT版本号:2016年4月6日版本)
做好就业与自主创业的准备.
消防安全伴我行! 济宁市兖州区第九中学 刘新成.
通用技术教学与实践 常德市鼎城区第八中学 刘启红.
用“自言自语法”提高学生 英语口头表达能力 李奉栖.
创业计划书的编写 白城师范学院创业教育 与文化研究中心 陆东辉.
生物学 新课标.
第九章日治時期的台灣(下).
基于Hadoop平台的微博热点事件提取.
职业责任保险 郝豫华
数据采集与Hadoop框架 报告人:黄文君 导 师:王华忠 BEA Confidential.
經濟部文書作業實務 報告人:何國金.
为教师开展大数据课程教学提供全方位、一站式服务
基于hadoop的数据仓库技术.
2010年高考语文《考试大纲》对本考点的要求是:“正确使用标点符号。”能力层级为D(表达应用)。
發展東華特色課程 期末成果發表 呂進瑞 國立東華大學財金系.
强化感恩意识 感恩之心,是人们感激自然、社会、他人对自己所施恩惠并设法报答的内在心理要求。
Map-Reduce Programming
崇右技術學院 電子公文線上簽核系統教育訓練
前不久看到了这样一则报道:某个大学校园里,一个大学生出寝室要给室友留一张字条,告诉他钥匙放在哪里。可是“钥匙”两个字他不会写,就问了其他寝室的同学,问了好几个,谁也不会写,没办法,只好用“KEY”来代替了。 请大家就此事发表一下自己看法。
一种基于Hadoop的视频大数据分布式解码方法 冯强
寫 作 教 學 6 電腦與我 時代改變,科技進步,電腦成為日常生活不可或缺的設備。我是二十一世紀的E世代少年,一隻滑鼠在手,樂趣無窮。
注重物理基本思想和方法教学 讲究实效 ——2012年高考物理复习备考建议
經國管理學院 電子公文線上簽核系統教育訓練
Introduction to MapReduce
软件工程基础 Hadoop生态系统 刘 驰.
YARN & MapReduce 2.0 Boyu Diao
利用共同供應契約 辦理大量訂購流程說明.
基于Hadoop的数据仓库Hive.
《大数据技术原理与应用》 第七章 MapReduce (2016春季学期) 林子雨 厦门大学计算机科学系 主页:
Cloud Computing 数据处理平台-Pig.
CHAPTER 6 認識MapReduce.
Spark在智慧图书馆建设中的应用探索 2017年12月22日.
Ch13 集合與泛型 物件導向程式設計(2).
厦门大学数据库实验室 MapReduce 连接
Cloud Computing MapReduce进阶.
Map Reduce Programming
Skew Join相关论文 报告人:蔡珉星 厦大数据库实验室
基于大数据的物流资源整合 福建师范大学协和学院 沈庆琼.
Homework 1(上交时间:10月14号) 倒排索引.
Hadoop入门
生涯手冊第18頁 生涯統整面面觀.
大綱 *專題演講介紹 *大陸醫療的改革與發展 *海報發表文章分享 2012海峽兩岸醫院院長論壇行後報告 ‧台北
A Big Data Framework for u-Healthcare Systems Utilizing Vital Signs
國有公用財產管理簡介 總 務 處 保管組 104年04月07日.
Unit 05 雲端分散式Hadoop實驗 -I M. S. Jian
基于云计算及数据挖掘技术的海量数据处理研究
基于MapReduce的Join算法优化
第三章 世界文明的蛻變與互動 第一節 歐洲社會的蛻變 第二節 世界文明的交匯 第三節 亞洲大帝國的發展 1.
兒童及少年保護、 家庭暴力及性侵害事件、 高風險家庭 宣導與通報
大学计算机基础——周口师范学院 第3章 Word字处理软件 3.8页眉与页脚.
Cloud Computing Google云计算原理.
基于位置感知和负载均衡 MapReduce的Join算法优化 汇报人:黄梓铭 厦大数据库实验室
《商業周刊》1000期封面故事 快樂國 不丹 這裡,不追求經濟成長率, 追求「快樂成長力」!.
10393:The One-Handed Typist
東吳大學『樂齡大學』 外雙溪環境與生態 產業 黃顯宗 東吳大學 微生物學系 101.
關鍵數據 DataSet3 數據錯了 扣 50分 97/12/18版 CC123 林文恭 研究室 碁峰資訊.
Presentation transcript:

基于Hadoop的Map/Reduce框架研究报告 黄飞

Outline 1. 模型介绍: Hadoop 简介 MapReduce 计算模型 2.实例分析 WordCount

Hadoop 简介

Hadoop 简介 Hadoop 是一个开源分布式计算平台,它实现了 Map/Reduce 计算模型。借助于 Hadoop, 程序员可以轻松地编写分布式并行程序,将其运行于计算机集群上,完成海量数据的计算。

Hadoop 简介 分布式并行编程概念 基于集群的分布式并行编程能够让软件与数据同时运行在连成一个网络的许多台计算机上,由此获得海量计算能力。

Hadoop 简介 迎接编程方式的变革 1.摩尔定律正在失效 根据摩尔定律,约每隔18个月,CPU性能会提高一倍。然而,由于晶体管电路已经逐渐接近其物理上的性能极限,摩尔定律在 2005 年左右开始失效。 2.分布式并行编程 互联网时代的到来,将使软件编程方式发生重大变革,基于大规模计算机集群的分布式并行编程是将来软件性能提升的主要途径。

Hadoop 简介 1.Google & Hadoop 2.Hadoop的未来

Map/Reduce 计算模型

Map/Reduce 计算模型 Map/Reduce 是 Hadoop的核心计算模型,它将复杂的运行于大规模集群上的并行计算过程高度的抽象到了两个函数,Map 和 Reduce, 这是一个令人惊讶的简单却又威力巨大的模型。

Map/Reduce 计算模型 Map/Reduce计算流程

Map/Reduce 计算模型 程序框架: Class MR{ Class Map …{ } Class Reduce …{ } main(){ JobConf conf = new JobConf(“MR.class”); conf.setInputPath(“the_path_of_HDFS ”); conf.setMapperClass(Map.class); conf.setReduceClass(Reduce.class); JobClient.runJob(conf); }}

Map/Reduce 计算模型 Map 和 Reduce 函数 计算模型的核心是map和reduce 两个函数,这两个函数由用户负责实现,功能是按一定的映射规则将输入的<key, value>对转换成另一个或一批<key, value>对输出

Map/Reduce 计算模型 基于 MapReduce 计算模型编写分布式并行程序非常简单,程序员的主要编码工作就是实现 Map 和 Reduce函数。 其它的并行编程中的种种复杂问题,如分布式存储,工作调度,负载平衡,容错处理,网络通信等,均由 MapReduce 框架(比如 Hadoop )负责处理。

Map/Reduce 计算模型 并行计算的实现: 数据分布存储 分布式并行计算 本地计算

Map/Reduce 计算模型 数据分布存储:

Map/Reduce 计算模型 … 分布式并行计算: Job Tracker Task Tracker Task Tracker Hadoop Black Box

Map/Reduce 计算模型 本地计算: 网络带宽为分布计算瓶颈,“本地计算”是最有效的一种节约网络带宽的手段,业界把这形容为“移动计算比移动数据更经济”。

实例分析:WordCount

实例分析:WordCount 1.实现Map类 这个类实现 Mapper 接口中的 map 方法,输入参数中的 value 是文本文件中的一行,利用StringTokenizer 将这个字符串拆成单词,然后将输出结果 <单词,1> 写入到org.apache.hadoop.mapred.OutputCollector 中。

实例分析:WordCount

实例分析:WordCount Output.Collecter Input Map(K, V) { For each word w in V 1, “Hello World Bye World” 2, “Hello Hadoop Bye Hadoop” 3, “Bye Hadoop Hello Hadoop” Output.Collecter <Hello,1> <World,1> <Bye,1> <Hadoop,1> Map Map(K, V) { For each word w in V Collect(w, 1); } Map Map

实例分析:WordCount Combine(K, V[ ]) { Int count = 0; Output. Map Output For each v in V count += v; Collect(K, count); } Output. Collecter <Hello,1> <World,1> <Bye,1> <Hadoop,1> Map Output <Hello,1> <World,2> <Bye,1> <Hadoop,2> Combine Combine Combine

实例分析:WordCount Reduce(K, V[ ]) { Int count = 0; Reduce Input For each v in V count += v; Collect(K, count); } Reduce Input <Hello,1> <World,2> <Bye,1> <Hadoop,2> Internal Grouping <Bye  1, 1, 1> <Hadoop  2, 2> <Hello  1, 1, 1> <World  2> Reduce Reduce Output <Bye, 3> <Hadoop, 4> <Hello, 3> <World, 2> Reduce Reduce Reduce

实例分析:WordCount 2.实现 Reduce 类: 这个类实现 Reducer 接口中的 reduce 方法, 输入参数中的 key, values 是由 Map 任务输出的中间结果,values 是一个 Iterator, 遍历这个 Iterator, 就可以得到属于同一个 key 的所有 value. 此处,key是一个单词,value 是词频。只需要将所有的 value 相加,就可以得到这个单词的总的出现次数。

实例分析:WordCount

实例分析:WordCount 3.运行 Job: 在 Hadoop 中一次计算任务称之为一个 job, 可以通过一个 JobConf 对象设置如何运行这个 job。然后将 JobConf 对象作为参数,调用 JobClient 的 runJob, 开始执行这个计算任务。

实例分析:WordCount

实例分析:WordCount 实验结果 Output: Input: Number of occurrences of each word Input: File containing words Bye 3 Hadoop 4 Hello 3 World 2 Hello World Bye World Hello Hadoop Bye Hadoop Bye Hadoop Hello Hadoop MapReduce

谢谢 陆老师的指导~-~ 刘兵兵、陈威同学的帮助~-~

谢谢