复习充电之Hadoop基础介绍

 Hadoop主要应用于海量数据存储 计算

Hadoop主要包含3个组件
    HDFS,MapReduce,Yarn
    
 HDFS 分析
  HDFS是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间
  HDFS负责海量数据的分布式存储
  HDFS支持主从结构,主节点支持多个NameNode,从节点支持多个DataNode
  NameNode 负责接收用户请求,维护目录系统的目录结构,DataNode主要负责存储数据
HDFS Shell
  使用格式: bin/hdfs dfs -xxx schema://authority/path
  HDFS的schema是hdfs,authority,NameNode的节点ip和对应的端口号,
  path是我们要操作的路径信息
     -ls 查询指定的路径信息 bin/hdfs dfs -ls dhfs://ssm:9000/
     -put 从本地上传文件
     -cat 查看hdfs文件内容
     -get 下载文件到本地
     -mkdir [-p] 创建文件夹
     -rm -r 删除文件或文件夹
 HDFS 体系结构详解
   hdfs包含 NameNode,SecondaryNameNode,DataNode
   NameNode 
           整个文件系统的管理节点,主要维护着整个文件系统的文件目录树
           文件和目录的云信息,每个文件对应的数据块列表,并且还负责接收用户的操作请求
               NameNode主要包含一下文件
                fsimage 元数据镜像  快照
                edits 用户的操作记录
                seed_txid 锁的id
                version
            以上文件保存的路径由hdfs-default.xml中的dfs.namenode.name.dir属性控制 
            如果文件很大会分割
        NameNode实际就是维护两份关系
           第一 ,file与block list的关系,对应的关系信息存储在fsimgs和ediss
           文件中(当NameNode启动的时候会把文件中的内容加载到内存中) 
          第二:dataNode与Block的关系(当DataNode启动的时候,会把当前节点上的block信息和节点信息上报到NameNode)
    SecondaryNameNode
        主要负责定期的把edits文件中的内容合并到fsimages中,这个合并的操作称为checkpoingt
        在合并的时候会对edits中的内容进行转换,生成新的内容保存到fsimages
        文件中
     DataNode
        提供真实文件数据的存储服务
        HDFS会按照固定的大小,顺序对文件进行划分并编号,划分好的一个块
        称之为Block,HDFS默认Block大小是128MB
        HDFS中,如果一个文件小于一个数据块的大小,那么并不会占用整个数据块的存储空间
        
MapReduce 分析
          MapReduce是一个编程分布式计算模型,主要用于搜索领域解决海量数据的计算问题,
          主要由两个阶段组成 Map和Reduce
             Map阶段是一个独立的程序,会在很多节点上同时执行,每个节点处理一部分数据
                0.读取数据,map处理,分区,排序,copy到reduce
                1.覆盖map()函数
                 
             Reduce阶段也是一个独立的程序,在先把Reduce理解为一个单独的聚合程序
                  0.排序,分组,reduce处理
                  1.覆盖reduce()函数
          
Yarn 分析
 yarm主要负责集群资源的管理和调度,支持主从架构,主节点最多可以有2个,从节点可以有多个
 主节点 ResoucesManager 进程主要负责集群资源的分配和管理
 从节点NodeManger 主要负责单节点的资源管理
    yarn支持3中调度器
        fifo Scheduler:先进先出(first in,first out)调度策略
        CapacityScheduler:可以看做是FifoScheduler的多队列
        FairScheduler:多队列,多用户共享资源
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值