Hadoop入门(简单搭集群)

本文介绍了大数据的基本概念,强调了Hadoop在处理海量数据存储和分析计算中的作用。详细讲述了Hadoop的发展历程,包括其源于Google的三篇论文,以及Hadoop的三大发行版本。同时,文章详细解析了Hadoop的组成,包括HDFS、YARN的架构及其组件的功能,并概述了MapReduce的工作机制。最后,文章提供了Hadoop运行环境的搭建步骤,包括虚拟机环境准备、安装JDK和Hadoop,以及运行模式的介绍,重点在于完全分布式模式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 学习内容Hadoop(入门)重点搭集群

    1.大数据概念
        
        ·大数据(bigdata),IT行业术语,
            是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合
            是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
        
        ·主要解决,海量级的存储、海量数据的分析计算、统一资源管理调度
        
        ·HDFS-海量级的存储    MapReduce-海量数据的分析计算    YARN-统一资源管理调度
        
        ·Hadoop的特点(4V)
            volume(大量)    velocity(高速)    variable(多样)    value(低价值密度)
        
        
    2.Hadoop是什么
            Hadoop是一个由Apache基金会所开发的分布式系统基础架构
            主要解决,海量数据的存储、分析计算问题
            广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈
        
        201.Hadoop发展史
            
            Hadoop的底层就来自于Google在大数据方面的三篇论文
            GFS-->HDFS
            MapReduce-->MR
            BigTable-->HBase
        
        202.Hadoop三大发行版本
            
            Apache 版本最原始(最基础)的版本,对于入门学习最好。
            Cloudera 在大型互联网企业中用的较多。
            Hortonworks 文档较好
        
        203.Hadoop的优势(4高)
            
            01.高可靠:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或者存储出现故障,也不会导致数据的丢失
            02.高扩展性:在集群分配任务数据,可方便的扩展数以千计的节点
            03.高效性:在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度
            04.高容错性:能够自动将失败的任务重新分配
            
        204.Hadoop组成
            
            01.    Hadoop1.x VS Hadoop2.x
                
                hadoop1.x是由 MapReduce(计算+资源调度) HDFS(数据存储) common(辅助工具) 组成
                hadoop2.x是由 MapReduce(计算) Yarn(资源调度) HDFS(数据存储) common(辅助工具) 组成
                区别:两者没有太大区别,只是2.x增加了Yarn,Yarn在2.x中只负责资源调度 MapReduce则只负责运算
                
            HDFS架构
                
                01.NameNode(nn):存储文件的元数据,如文件名、文件目录结构、文件属性、以及每个文件的块列表和块所在的DataNode等。
                02.DataNode(dn):在本地文件系统存储块数据,以及块数据的校验和。
                03.SecondaryNameNdoe(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。
        
            YARN架构
                
                01.ResourceManager(RM)主要作用
                    1.处理客户端请求
                    2.监控NodeManager
                    3.启动或监控ApplicationMaster
                    4.资源的分配与调度
                02.NodeManager(NM)主要作用
                    1.管理单个节点上的资源
                    2.处理来自ResourceManager的命令
                    3.处理来自ApplicationMaster的命令
                03.ApplicationMaster(AM)主要作用
                    1.负责数据的切分
                    2.为应用程序申请资源并分配给内部的任务
                    3.任务的监控与容错
                04.Container
                    Container是YARN中的资源抽象,它封装了某个节点上多维度资源,如(内存、CPU、磁盘、网络)等。
                    
            YARN工作机制

                (0)Mr程序提交到客户端所在的节点

                (1)Yarnrunner向Resourcemanager申请一个Application。

                (2)rm将该应用程序的资源路径返回给yarnrunner

                (3)该程序将运行所需资源提交到HDFS上

                (4)程序资源提交完毕后,申请运行mrAppMaster

                (5)RM将用户的请求初始化成一个task

                (6)其中一个NodeManager领取到task任务。

                (7)该NodeManager创建容器Container,并产生MRAppmaster

                (8)Container从HDFS上拷贝资源到本地

                (9)MRAppmaster向RM 申请运行maptask容器

                (10)RM将运行maptask任务分配给另外两个NodeManager,另两个NodeManager分别领取任务并创建容器。

                (11)MR向两个接收到任务的NodeManager发送程序启动脚本,这两个NodeManager分别启动maptask,maptask对数据分区排序。

                (12)MRAppmaster向RM申请2个容器,运行reduce task。

                (13)reduce task向maptask获取相应分区的数据。

                (14)程序运行完毕后,MR会向RM注销自己。
    
            MapReduce架构
                
                01.MapReduce将计算过程分为两个阶段:Map和Reduce
                02.Map阶段并行处理输入数据    Reduce阶段对Map结果进行汇总
    
    
    3.Hadoop运行环境搭建
        
        301.虚拟机环境准备
            
            1.克隆虚拟机
            2.修改克隆虚拟机的静态IP
            3.修改主机名
            4.关闭防火墙
            5.创建普通用户
            6.配置普通用户具有root权限
            7.在/opt目录下创建文件夹
                01.在/opt目录下创建module、software文件夹
                    sudo mkdir module
                    sudo mkdir software
                02.修改software、module 文件夹的所有者cd(赋于权限)
                    sudo chown jinghang:jinghang module/ software/
                    
            8.安装jdk
                01.    安装jdk之前先使用:rpm -qa | grep java 命令查看是否安装过java软件
                    如果安装的版本低于1.7就用:sudo rpm -e 软件包 的命令卸载
                    如果没有安装就准备下一步进行安装
                02.    使用Xshell工具将JDK压缩包导入到opt目录下面的software文件夹下面,这个文件夹用来放我们所有要使用的压缩包
                
                03.    解压压缩包
                    
                    将刚刚放在software的压缩包解压到module下面
                    
                    命令:tar -zxvf 压缩包名 -C /opt/module/
                
                04.    配置JDK的环境变量
                    
                    先获取jdk路径:在jdk软件包下面pwd获取路径
                    
                    vim到profile文件中:sudo vim /etc/profile

                    在profile文件的末尾添加我们刚获取的jdk路径
                        #JAVA_HOME
                        export JAVA_HOME=/opt/module/jdk1.8.0_144
                        export PATH=$PATH:$JAVA_HOME/bin
                    
                    然后wq保存 执行source /etc/profile 让其生效
                    使用:java -version 命令来测试是否安装成功
            
            9.hadoop的安装同上jdk
            
    
    4.Hadoop运行模式
        
        hadoop的运行模式包括:本地运行模式    伪分布模式    完全分布式模式    
        01.本地模式:不需要启用单独进程,直接可以运行,测试和开发时使用。
        02.伪分布模式:等同于完全分布式,只有一个节点。
        03.完全分布式模式:多个节点一起运行
        
        注意:我们一般开发使用的主要是完全分布式模式(重点)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值