大数据技术之Hadoop(入门)

1. Hadoop介绍

Hadoop是Apache Lucene创始人是Doug Cutting,最早起源于Lucene的子项目Nutch,Nutch项目目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但是随着抓取的网页数量的增加,他遇到一个问题:如何解决数亿网页的存储和索引!

与此同时另外一家做搜索引擎的公司,也在做这方面的研发,实现了软件解决了海量数据的存储等问题,但是没有把这个软件开源出来,只是通过发表论文做了描述。

2003年谷歌发表了一篇论文为该问题提供 了可行的解决方案。论文中描述了谷歌的产品框架:GFS谷歌分布式系统。可以解决在网页抓取和索引过程中的超大文件的存储和索引需求。

这个论文对Doug Cutting 来说很重要,他也按照这个思想实现了自己的大数据存储系统HDFS。

2004年谷歌又发表了论文介绍了了谷歌版本的MapReduce系统,也是没有公布实现细节。

于是在同一时期Nutch开发人员完成了相应的开源实现HDFS和MapReduce,并从Nutch中剥离出来,成立了一个Hadoop项目,到2008年Hadoop成为了Apache下的顶级项目,得到了快速发展。

2006年谷歌发表论文介绍了BigTable,这又促使Hadoop生态圈中的Hbase的发展。

因此,Hadoop的发展离不开谷歌三篇论文的贡献!

我们发现Hadoop的logo是一个黄色的大象,是因为Doug Cutting 在给这个项目取名字的时候,正好看到他女儿的玩具Hadoop–一个黄色的大象,于是这个项目的名字就叫了Hadoop ,并且Logo是一个黄色的大象。

大数据技术之Hadoop(入门)

2.从Hadoop框架讨论大数据生态

1)Hadoop的优势

  • 高可靠性:

因为Hadoop假设计算元素和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。

  • 高扩展性:

在集群间分配任务数据,可方便的扩展数以千计的节点。

  • 高效性:

在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。

  • 高容错性:

自动保存多份副本数据,并且能够自动将失败的任务重新分配。

2)Hadoop组成

  • Hadoop HDFS:
  • 一个高可靠、高吞吐量的分布式文件系统。
  • Hadoop MapReduce:
  • 一个分布式的离线并行计算框架。
  • Hadoop YARN:
  • 作业调度与集群资源管理的框架。
  • Hadoop Common:
  • 支持其他模块的工具模块(Configuration、RPC、序列化机制、日志操作)。

 

3)HDFS架构概述

  • Namenode:存储元数据
  • Datanode:存储数据的节点,会对数据块进行校验
  • Secondarynamenode:监控namenode 的元数据,每隔一定的时间进行元数据的合并
  • YARN架构概述
  • ResourceManager(rm)

处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度

  • NodeManager(nm)

单个节点上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令

  • ApplicationMaster

数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错

  • Container

对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息

  • MapReduce架构概述
  • MapReduce将计算过程分为两个阶段:Map和Reduce
  • Map阶段并行处理输入数据
  • Reduce阶段对Map结果进行汇总

 

3. Hadoop集群安装与配置

hadoop是在liunx环境下运行,所以要具备liunx基本操作能力,作者推荐以下书籍,感觉还可以!

《Linux就该这么学》当前最新版下载地址: Word版本 , PDF版本

大数据技术之Hadoop(入门)

1、 环境准备

1.1 修改主机名

#修改主机名
hostnamectl set-hostname  名字

1.2  设置静态IP

安装的时候是DHCP自动分配IP,安装完成后设置静态IP
/etc/sysconfig/network-scripts

BOOTPROTO=static # 使用静态IP地址,默认为dhcp
IPADDR=192.168.140.105 # 设置的静态IP地址
GATEWAY=192.168.140.2 # 网关地址
NETMASK=255.255.255.0 # 子网掩码
DNS1=8.8.8.8 # DNS服务器
ONBOOT=yes #设置自启


1.3  关闭防火墙

关闭防火墙:systemctl stop firewalld 

禁用防火墙:systemctl disable firewalld

查看防火墙:systemctl status firewalld

1.4  配置免密登录

配置免密登录详细步骤

1.5  JDK准备

1.jdk的卸载和安装

我们要安装标准的jdk,如果不是标准的jdk,比如openJDK要卸载。

卸载命令:rpm –qa | grep java  

查找安装包:rpm –e  --nodeps  包名

 

2、创建文件夹用来放置安装的软件如jdk,zookeeper

命令:mkdir /export/server

3、上传jdk包:rz拖拽

4、安装命令   tar zxvf  包名

5、修改环境变量-3台机器都要添加:

export JAVA_HOME=/export/server/jdk1.8.0_171

export CLASSPATH=.:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

export PATH=$PATH:${JAVA_HOME}/bin

6、重新加载profile文件:

source /etc/profile

1.6 Hadoop安装

安装配置Hadoop详细步骤

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 HONG'S
原文地址:《大数据技术之Hadoop(入门)》 发布于2020-01-27

分享到:
赞(0) 打赏 生成海报

评论 抢沙发

4 + 3 =


长按图片转发给朋友

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.5主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录
切换登录

注册