• 1. Hadoop 介绍与实践©2009 Wuhan University, LIESMARS演讲人:沈盛彧 2011-08-04
  • 2. 前版本目录 背景 Hadoop介绍 HDFS介绍 MapReduce介绍 MapReduce实践 安装 编程
  • 3. 背景数据 2006年的”数字地球”项目的数据问题为0.18ZB; 预测2011年其数值将增长到1.8ZB,为2006年的10倍; 1ZB相当于10的21次方字节,1ZB=1024EB=1024*1024PB; 生活中的数据:Facebook,图书馆, 照片等等; 数据的存储和分析 1990年,硬盘大概为1370MB,传输速度为4.4MB/s,读取全部传输需要300多秒; 2010年,硬盘大概为1TB,传输速度为100MB/s,读取全部传输需要1万秒; 并行的对多个硬盘读写会大大提高速度。
  • 4. Hadoop介绍Hadoop是一个分布式计算基础架构下的相关子项目的集合; Hadoop是由Apache软件基金会支持; Hadoop中的MapReduce,HDFS,HBASE是基于Google发布的MapReduce,GFS,Bigtable设计实现; 2004年,最初版本的由 Doug Cutting 和 Mike Cafarella开始实施; 2006年,Yahoo网络计算团队采用Hadoop。
  • 5. HDFS块的概念 64MB (寻址时间和传输时间); 块副本,一般有2个; 名称节点与数据节点(Namenode与Datanode) 名称节点只有一个,记录数据文件和数据块的信息; 数据节点有多个,存储数据文件,定时向名称节点报告;
  • 6. MapReduce介绍流程图逻辑数据流
  • 7. MapReduce介绍工作原理
  • 8. MapReduce实践安装单机伪集群 1、安装ubuntu11.04; 2、更新deb软件包: sudo apt-get update; 3、安装系统更新 sudo apt-get upgrade; 4、添加软件源: 更新管理器中设置软件源,添加canonical项; 5、安装JDK: sudo apt-get install sun-java6-jdk JRE设置时,按“TAB”键后,“确认”变红再回车;
  • 9. MapReduce实践6、设置CLASSPATH和JAVA_HOME sudo gedit /etc/environment 添加: CLASSPATH=”.:/usr/lib/jvm/java-6-sun/lib” JAVA_HOME=”/usr/lib/jvm/java-6-sun” 7、下载Hadoop-0.20.2.tar.gz,放在当前用户的根目录下即可; 8、设置Hadoop环境变量 gedit hadoop/conf/hadoop-env.sh 将#export JAVA_HOME= *** 这一行改为: export JAVA_HOME=/usr/lib/jvm/java-6-sun 9、修改sudoers里面当前用户的权限 root ALL=(ALL:ALL) ALL 添加 ssy ALL=(ALL:ALL) ALL
  • 10. MapReduce实践10、修改hosts内容: 添加:127.0.0.1 master 11、修改hostname内容: 添加:master 12、设置SSH: sudo apt-get install ssh sudo apt-get install rsync ssh-keygen –t dsa –P ‘’ –f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys ssh localhost //验证配置成功与否 13、配置conf/masters , conf/slaves, 在里面都写master 14、配置core-site.xml,hdfs-site.xml,mapred-site.xml
  • 11. MapReduce实践15、格式化分布式文件系统 在namenode上 sudo ./bin/hadoop namenode –format 启动HDFS,在namenode上 ./bin/start-all.sh jps ./bin/stop-all.sh
  • 12. MapReduce实践编程 eclipse 将hadoop/contrib/eclipse-plugin下的hadoop-XXX-eclipse-plugin.jar拷到eclipse安装路径下的plugins中; 演示。。。
  • 13. 谢 谢!