6-Hadoop入门进阶课程MapReduce应用案例.docVIP

  • 10
  • 0
  • 约5.48万字
  • 约 57页
  • 2017-04-18 发布于四川
  • 举报
第  PAGE 57 页 共  NUMPAGES 57 页 出自石山园,博客地址:/shishanyuan MapReduce应用案例 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博主为石山园,博客地址为  HYPERLINK /shishanyuan /shishanyuan? 。该系列课程是应邀实验楼整理编写的,这里需要赞一下实验楼提供了学习的新方式,可以边看博客边上机实验,课程地址为  HYPERLINK /courses/237 /courses/237 【注】该系列所使用到安装包、测试数据和代码均可在百度网盘下载,具体地址为 /s/10PnDs,下载该 HYPERLINK /files/shishanyuan/1.Hadoop%E5%85%A5%E9%97%A8%E8%BF%9B%E9%98%B6%E8%AF%BE%E7%A8%8B_%E7%AC%AC1%E5%91%A8_Hadoop1.X%E4%BC%AA%E5%88%86%E5%B8%83%E5%BC%8F%E5%AE%89%E8%A3%85.pdf \t _blank PDF文件 环境说明 部署节点操作系统为CentOS,防火墙和SElinux禁用,创建了一个shiyanlou用户并在系统根目录下创建/app目录,用于存放Hadoop等组件运行包。因为该目录用于安装hadoop等组件程序,用户对shiyanlou必须赋予rwx权限(一般做法是root用户在根目录下创建/app目录,并修改该目录拥有者为shiyanlou(chown –R shiyanlou:shiyanlou /app)。 Hadoop搭建环境: 虚拟机操作系统: CentOS6.6 64位,单核,1G内存 JDK:1.7.0_55 64位 Hadoop:1.1.2 准备测试数据 测试数据包括两个文件dept(部门)和emp(员工),其中各字段用逗号分隔: dept文件内容: 10,ACCOUNTING,NEW YORK 20,RESEARCH,DALLAS 30,SALES,CHICAGO 40,OPERATIONS,BOSTON emp文件内容: 7369,SMITH,CLERK,7902,17-12月-80,800,,20 7499,ALLEN,SALESMAN,7698,20-2月-81,1600,300,30 7521,WARD,SALESMAN,7698,22-2月-81,1250,500,30 7566,JONES,MANAGER,7839,02-4月-81,2975,,20 7654,MARTIN,SALESMAN,7698,28-9月-81,1250,1400,30 7698,BLAKE,MANAGER,7839,01-5月-81,2850,,30 7782,CLARK,MANAGER,7839,09-6月-81,2450,,10 7839,KING,PRESIDENT,,17-11月-81,5000,,10 7844,TURNER,SALESMAN,7698,08-9月-81,1500,0,30 7900,JAMES,CLERK,7698,03-12月-81,950,,30 7902,FORD,ANALYST,7566,03-12月-81,3000,,20 7934,MILLER,CLERK,7782,23-1月-82,1300,,10 在/home/shiyanlou/install-pack/class6目录可以找到这两个文件,把这两个文件上传到HDFS中/class6/input目录中,执行如下命令: cd /home/shiyanlou/install-pack/class6 hadoop fs -mkdir -p /class6/input hadoop fs -copyFromLocal dept /class6/input hadoop fs -copyFromLocal emp /class6/input hadoop fs -ls /class6/input 应用案例 测试例子1:求各个部门的总工资 问题分析 MapReduce中的join分为好几种,比如有最常见的 reduce side join、map side join和semi join 等。reduce join 在shuffle阶段要进行大量的数据传输,会造成大量的网络IO效率低下,而map side join 在处理多个小表关联大表时非常有用 。 Map side join是针对以下场景进行的优化:两个待连接表中,有一个表非常大,而另一个表非常小,以至于小表可以直接存放到内存中。这样我们可以将小表

文档评论(0)

1亿VIP精品文档

相关文档