hadoop基本原理与入门实践

上传人:xh****66 文档编号:58082882 上传时间:2018-10-26 格式:PPT 页数:119 大小:6.37MB
返回 下载 相关 举报
hadoop基本原理与入门实践_第1页
第1页 / 共119页
hadoop基本原理与入门实践_第2页
第2页 / 共119页
hadoop基本原理与入门实践_第3页
第3页 / 共119页
hadoop基本原理与入门实践_第4页
第4页 / 共119页
hadoop基本原理与入门实践_第5页
第5页 / 共119页
点击查看更多>>
资源描述

《hadoop基本原理与入门实践》由会员分享,可在线阅读,更多相关《hadoop基本原理与入门实践(119页珍藏版)》请在金锄头文库上搜索。

1、Hadoop基本原理与入门实践,网络文化与数字传播中心北京市重点实验室,讲述内容,干货奉上 第1章 Hadoop 的起源 第2章 hadoop 环境配置 第3章 Hadoop 实战(wordcount与倒排索引) 更多内容 第4章 Hadoop 细节,什么是大数据,一个交易系统中的大数据是什么 看看现在公司核心业务是什么;并由此产生了多少数据,又有多少数据是公司要处理的。 但是一个传统平台并没有这么高的成本效益来处理大数据;企业需要一个很好的平台能够搜集所有有效的数据:有效地处理大量数据,与系统进行交互和通信 这就是Hadoop。 那么小型数据平台和大型数据平台又有什么区别?首先水平扩展性,这

2、是一个很有挑战性的问题;必须能够方便的使用并且能够非常灵活在一些不同的应用中使用,也能在虚拟的云计算中使用的平台。这就是企业所期待的平台 大数据平台。,hadoop的起源,Hadoop 开始时时nutch的一个子项目,而nutch又是Apache Lucene的子项目。这三个项目都是由Doung Cutting创立,每个项目都是上一个项目的演进。 Lucene是搜索引擎开发工具包,提供了一个纯Java的高性能全文检索,他可以方便嵌入实际应用中实现全文搜索、索引功能。 Nutch项目始于2002年,是以Lucene为基础的实现的搜索引擎应用。Lucene为nutch提供了文本搜索和索引API,N

3、utch不光有搜索功能,还有数据抓取功能。 很快,Doug Cutting和Mike(Hadoop和Nutch的另一位创始人)就意识到,他们的架构无法扩展支持数以十亿的网页。这时候,Google的研究人员在2003 ACM会议上发表描述了谷歌的分布式文件系统,即GFS的论文,即时为他们提供了帮助,解决了网络抓取和索引过程中产生大量文件存储的需求,于是,他们开始写GFS的一个开源实现,即Nutch的分布式文件系统,NDFS。 2004年,2004年,google发表论文介绍了他们的MapReduce系统。 2005年,Nutch开发人员在Nutch上实现了第一个MapReduce系统,并在年中实

4、现了算法完全移植。这样,Nutch的NDFS和MapReduce实现不只是适用于搜索领域。 2006年2月,开发人员将NDFS和MapReduce移出了Nutch形成了Lucene的一个子项目,称为Hadoop。与此同时,创始人Doung加入了yahoo,yahoo将Hadoop发展成一个能够处理Web数据的系统。 2008年2月,Yahoo!宣布其搜索引擎使用的索引是在一个拥有1万个内核的Hadoop集群上构建的。 2008年1月,Hadoop称为Apache的顶级项目。至今,除了Yahoo!外,还有 Facebook等其他公司使用Hadoop架构。 2008年4月,Hadoop打破世界纪录

5、,成为最快的TB级别排序系统。通过一个910个节点的集群,Hadoop在209秒内完成对1TB的数据的排序。 2008年11月,Google的报告中声称,它的MapReduce对1TB排序只用了68秒。 2009年5月,Yahoo!的团队排序用了62秒。,什么是hadoop?它能干什么?,诞生背景:谷歌面对的数据和计算难题,1.大量的网页怎么存储?2.搜索算法,什么是hadoop?,Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop D

6、istributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。 Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。,Hadoop 体系结构,HDFS(Hadoop Dist

7、ributed File System) 和Mapreduce是hadoop的两大核心HDFS(文件系统)实现分布式存储的底层支持Mapreduce(编程模型)实现分布式并行任务处理的程序支持,Hadoop 子项目家族,Hadoop HDFS,HDFS:采用Master/Slave结构模型,Master NameNode JobTracker,DataNodeTaskTracker,DataNodeTaskTracker,DataNodeTaskTracker,DataNodeTaskTracker,Secondary NameNode,HDFS术语,HDFS主要组件的功能,NameNode

8、DataNode 存储元数据 存储文件内容 元数据保存在内存中 文件内容保存在磁盘,Hadoop MapReduce 也采用了 Master/Slave( M/S) 架构,MapReduce术语,MapReduce,第二章 hadoop环境配置,孩儿们操练起来!,实验环境,1.PC:linux环境:vmware虚拟机下unbuntu 14.042或windows环境:windows+Cygwin2.java环境:java version “1.7.0_75“ 3. Apache官网下载 hadoop 2.6.0 4.SSH:windows下可以使用SecureCRT或putty等ssh cli

9、ent程序,作用是用来远程连接linux服务器,linux下可以直接使用ssh命令,下载Hadoop,Hadoop目录结构,为什么要配环境变量,1.告诉计算机Hadoop来了:例如输命令调用Hadoop时告诉计算机hadoop的位置,配置PATH路径。 2.告诉Hadoop计算机的信息:将Hadoop部署到计算机上,并用hadoop完成一项工作时需要计算机的一些资源,例如登陆HDFS时需要用到计算机端口。 3.Hadoop工作时需要按需求配置一些参数,例如告诉Hadoop做分布式运算时有多少个节点。,演出开始 Hadoop三种运行模式,单机模式:只有一个JVM进程, 没有分布式,不使用HDFS

10、,伪分布式模式:只有一台机器,每个Hadoop守护进程都是一个独立的JVM进程,通常用于调试。,完全分布式模式:运行于 多台机器上,真实环境。,Hadoop三种运行模式,1.单机模式:安装简单,几乎不用作任何配置,但仅限于调试用途2. 伪分布模式:在单节点上同时启动namenode、 datanode、 jobtracker、 tasktracker、 secondary namenode等5个进程,模拟分布式运行的各个节点3. 完全分布式模式:正常的Hadoop集群,由多个各司其职的节点构成,Hadoop配置有关文件,Hadoop伪分布环境搭建 步骤:1.配置系统环境变量:/etc/prof

11、ile2.配置hadoop环境变量:修改hadoop目录以下文件hadoop-env.sh、mapred-site.xml、core-site.xmlhdfs-site.xml、yarn-site.xml3.SSH免密码登陆,Hadoop伪分布环境搭建 1.配置 etc/profile 添加: export JAVA_HOME=/home/flamingo/jdk1.7.0_75 export HADOOP_HOME=/home/flamingo/hadoop-2.6.0 export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

12、 export PATH=$PATH:$JAVA_HOME/bin;$PATH:$HADOOP_HOME/bin2.配置 hadoop-env.sh 添加: export JAVA_HOME=/home/flamingo/jdk1.7.0_75,3.修改hadoop-2.6.0文件权限为用户权限: 默认没有mapred-site.xml文件,复制mapred-site.xml.template一份,并把名字改为mapred-site.xml4.配置下面4个重要文件: mapred-site.xml core-site.xml hdfs-site.xml yarn-site.xml, mapre

13、d-site.xmlmapred.job.trackerMaster.hadoop:9001Host or IP and port of JobTracker. ,core-site.xmlhadoop.tmp.dir /home/flamingo/hadoop-2.6.0/tmp Abase for other temporary directories.fs.default.name hdfs:/Master.hadoop:9000,hdfs-site.xmldfs.replication1 dfs.name.dir/home/flamingo/hadoop-2.6.0/dfs/name

14、dfs.data.dir/home/flamingo/hadoop-2.6.0/dfs/data ,yarn-site.xml:yarn.nodemanager.aux.servicesmapreduce_shuffle ,SSH免密码登陆 1、安装SSH:sudo apt-get install ssh生成公钥与私钥:ssh-keygen -t rsa 2. ls -al /home/flamingo看是否创建好.ssh目录 3. 创建.ssh目录: mkdir /home/flamingo/.ssh 4.将公钥加入到用于认证的公钥文件中: 进入.ssh目录:cd .ssh cp id_rs

15、a.pub authorized_keys 5.免密码登陆:ssh localhost配置完成!,登陆HDFS 格式化NameNode: bin/hadoop namenode -format 启动HDFS: start-dfs.sh ,start-yarn.sh 或者直接 sbin/start-all.sh 查看web页面信息:localhost:50070,Eclipse下搭建Hadoop2.6.0开发环境,1.安装eclipse 2.下载hadoop对应版本的eclipse插件。 3.把插件放到eclipse/plugins目录下 4.重启eclipse,打开WindowsPrefere

16、nces后,在窗口左侧会有Hadoop Map/Reduce选项,点击此选项,在窗口右侧设置Hadoop安装路径。 5.配置Map/Reduce Locations。 在WindowShow View中打开Map/Reduce Locations.在Map/Reduce Locations中新建一个Hadoop Location。在这个View中,右键New Hadoop Location。在弹出的对话框中你需要配置Location name,如Hadoop,还有Map/Reduce Master和DFS Master。这里面的Host、Port分别为你在mapred-site.xml、core-site.xml中配置的地址及端口。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号