一、hadoop简介
一、概述
Hadoop是Apache提供的一个开源的、可靠的、可扩展的系统架构,可以利用分布式架构来进行海量数据的存储以及计算。
需要注意的是Hadoop处理的是离线数据,即在数据已知以及不要求实时性的场景下使用。
二、版本
- Hadoop1.0:只包含HDFS以及MapReduce两个模块
- Hadoop2.0:完全不同于1.0的架构,包含HDFS、MapReduce以及Yarn三个模块
- Hadoop3.0:包含HDFS、MapReduce、Yarn、Ozone以及Submarine五个模块
注意:Hadoop区分版本明确,应该使用相同的版本进行大数据方面的数据研发
三、模块
- Common:在Hadoop1.0中,包含HDFS、MapReduce和其他项目公共内容,从Hadoop2.0开始,HDFS和MapReduce被分离为独立的子项目,其余内容为Hadoop Common
- HDFS:用于分布式环境下数据的存储
- Yarn:Hadoop2.0版本中出现,用于进行资源管理和任务调度的框架
- MapReduce:从Hadoop2.0开始,基于Yarn,用于在海量数据的场景下进行并行计算
- Ozone:基于HDFS进行对象的存储
- Submarine:基于Hadoop进行机器学习的引擎
四、相关组件
- HBase: 类似Google BigTable的分布式NoSQL列数据库。(HBase和Avro已经于2010年5月成为顶级 Apache 项目)
- Hive:数据仓库工具,由Facebook贡献
- Zookeeper:分布式锁设施,提供类似Google Chubby的功能,由Facebook贡献
- Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。
- Pig: 大数据分析平台,为用户提供多种接口
- Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群
- Sqoop:于在Hadoop与传统的数据库间进行数据的传递
二、Hadoop的起源
一、创始人:Doug Cutting和Mike Cafarella
Doug Cutting是一位软件设计师,也是开源搜索技术的倡导者和创造者。他创建了Lucene,并与Mike Cafarella创建了Nutch,这些项目现在通过Apache Software Foundation进行管理。Cutting和Cafarella也是Apache Hadoop的联合创始人。
Mike Cafarella是一位专攻数据库管理系统的计算机科学家。他是密歇根大学的计算机学科的副教授。Mike与Doug Cutting一起创建了Hadoop以及Nutch这两个开源项目。
二、命名
Hadoop这个名字不是一个缩写,而是一个虚构的名字。该项目的创建者,Doug Cutting解释Hadoop这个名字的由来:“这个名字是我孩子给一个棕黄色的大象玩具命名的。我的命名就是这么标准而简短,容易发音和拼写,没有太多的意义,并且不会被用于别处。小孩子恰恰是这方面的高手”。
三、起源
- 2002年,Doug Cutting和Mike Cafarella在设计搜索引擎Nutch的时候,爬取了整个互联网,一共获得了10亿个网页数据。因为互联网的数据大多数是非结构化的,所以无法存储在传统的关系型数据库中
- 2003年,Google发表一篇关于集群系统存储的论文:《The Google File System》(简称为GFS)
- 2004年,Cutting在基于GFS的基础上设计了NDFS(Nutch Distributed File System)
- 2004年,Google发表了另一篇关于集群系统计算的论文:《MapReduce: Simplified Data Processing on Large Clusters》
- 2005年,Doug根据谷歌的论文设计了在Nutch中使用的MapReduce
- 在Nutch0.8之后,将NDFS模块以及MapReduce模块独立出来,重命名为Hadoop,并将NDFS重命名为HDFS - Hadoop Distributed File System
- 2006年,Doug Cutting加入了Yahoo,雅虎为此专门成立了专门的团队和资源,将Hadoop发展成能够以Web网络规模运行的系统
- Doug Cutting在Yahoo的工作期间,先后设计了Hive,Pig,HBase等
- 后来Yahoo将Hadoop、Hive、Pig、HBase等贡献给了Apache
三、国内应用Hadoop架构的企业
一、百度
百度使用Hadoop构建了数据处理平台,Hadoop集群中的节点个数超过了2W个,每天处理的数据量可以达到20PB。
- 网页的分析处理
- 用户的访问行为的分析处理,以建立用户画像
- 用户推荐系统的数据分析和处理
- 在线广告的点击分析和流量分析
二、支付宝
支付宝的数据架构:
海豚架构:
海狗逻辑架构:
三、美团
美团的大数据架构:
四、Hadoop在eclipse中的使用
一、步骤
- 将插件hadoop-eclipse-plugin-2.7.1.jar放到eclipse安装目录下的bin目录下
- 解压hadoop-2.7.1.rar
- 将hadoopbin_for_hadoop2.7.1.zip解压到Hadoop安装目录的bin目录下
- 双击wintuils,如果报错,则将mscvr120.dll文件复制到C:\Windows\System32目录下
- 添加环境变量:
HADOOP_USER_NAME=root
例如:HADOOP_USER_NAME
root
HADOOP_HOME=Hadoop的安装目录
例如:D:\Hadoop\hadoop-2.7.1
Path=%HADOOP_HOME%\bin;
- 启动eclipse
- 在eclipse的Window -> Preferences中进行配置
- 选择Hadoop Map/Reduce,指定Hadoop的安装目录
二、hadoop-eclipse-plugin-2.7.1.jar使用说明
使用说明
步骤1:下载hadoop2.7.1.tar.gz到本地并解压缩,我是放在这个目录C:\Program Files\Hadoop\hadoop-2.7.1
步骤2:下载hadoop-eclipse的插件,https://github.com/winghc/hadoop2x-eclipse-plugin,把hadoop2x- eclipse-plugin-master\release\hadoop-eclipse-plugin-2.6.0.jar
放到eclipse的plugins目录下。(插件写的是hadoop2.6.0的插件,但是hadoop2.7也支持)
步骤3:重启一下eclipse,然后可以看到DFS Locations:
步骤4:.打开Window-->Preferens,可以看到Hadoop Map/Reduc选项,然后点击,然后添加步骤1中hadoop的路 径进来
步骤5:点击Window-->Show View -->MapReduce Tools 点击Map/ReduceLocation,点击Map/ReduceLocation选 项卡,点击右边小象图标,打开Hadoop Location配置窗口: 输入Location Name,任意名称即可.配置 Map/Reduce Master和DFS Mastrer,Host和Port配置成hdfs-site.xml与core-site.xml的设置一致即可。
如果连接成功,会出现hdfs上面的文件夹三、附上本人感觉比较好的链接
https://www.cnblogs.com/zimo-jing/p/8579065.html经供参考
五、hadoop-2.7.1.rar及hadoop-eclipse-plugin-2.7.1.jar百度网盘下载地址
链接:https://pan.baidu.com/s/1fThwZDKEXHBtBrPpAjLfiA
提取码:uvk3注意:如果过期或失效,有需要的小伙伴评论我发给你链接。
总结不易,期待您的关注,我们一起进步,冲冲冲!!!