黑帽联盟

 找回密码
 会员注册
查看: 1410|回复: 0
打印 上一主题 下一主题

[集群服务] Hadoop概念详解

[复制链接]

895

主题

38

听众

3322

积分

管理员

Rank: 9Rank: 9Rank: 9

  • TA的每日心情

    前天 13:01
  • 签到天数: 1643 天

    [LV.Master]伴坛终老

    Hadoop是什么?Hadoop是一个开发和运行处理大规模数据的软件平台,是Appach的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算.


    Hadoop框架中最核心设计就是:HDFS和MapReduce.HDFS提供了海量数据的存储,MapReduce提供了对数据的计算.

    数据在Hadoop中处理的流程可以简单的按照下图来理解:数据通过Haddop的集群处理后得到结果.

    wKiom1f_pviDiHn-AAEhFdHLaAE733.png-wh_651x-s_1692095800.png


    HDFS:Hadoop Distributed File System,Hadoop的分布式文件系统.
    大文件被分成默认64M一块的数据块分布存储在集群机器中.

    如下图中的文件 data1被分成3块,这3块以冗余镜像的方式分布在不同的机器中.


    wKioL1f_pvjzqRQpAABSlpn8UDU216.png-s_3031696405.png


    MapReduce:Hadoop为每一个input split创建一个task调用Map计算,在此task中依次处理此split中的一个个记录(record),map会将结果以key--value的形式输出,hadoop负责按key值将map的输出整理后作为Reduce的输入,Reduce Task的输出为整个job的输出,保存在HDFS上.


    wKioL1f_pvjwCD-aAAB4Ex39Pjo266.png-s_3799577462.png


    Hadoop的集群主要由 NameNode,DataNode,Secondary NameNode,JobTracker,TaskTracker组成.

    如下图所示:

    wKiom1f_pviie2HTAAB2M5YQ4TI734.png-s_940288200.png


    NameNode中记录了文件是如何被拆分成block以及这些block都存储到了那些DateNode节点.

    NameNode同时保存了文件系统运行的状态信息.

    DataNode中存储的是被拆分的blocks.

    Secondary NameNode帮助NameNode收集文件系统运行的状态信息.

    JobTracker当有任务提交到Hadoop集群的时候负责Job的运行,负责调度多个TaskTracker.

    TaskTracker负责某一个map或者reduce任务.


    帖子永久地址: 

    黑帽联盟 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
    2、本站所有主题由该帖子作者发表,该帖子作者与黑帽联盟享有帖子相关版权
    3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和黑帽联盟的同意
    4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
    5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
    6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
    7、黑帽联盟管理员和版主有权不事先通知发贴者而删除本文

    勿忘初心,方得始终!
    您需要登录后才可以回帖 登录 | 会员注册

    发布主题 !fastreply! 收藏帖子 返回列表 搜索
    回顶部