[1]了解Hadoop

版权声明:Collected by Bro_Rabbit only for study https://blog.csdn.net/weixin_38240095/article/details/82987226

1. Hadoop本身用于海量日志分析,现已成大数据生态体系代表。

三大基础组件


2. HDFS 原理概述

(1)将一个文件分割成数据块,存储于不同的DataNode上。

(2)NameNode存储数据块索引,维持数据块链。

(3)客户端不论读写都要先访问NameNode。

(4)原理概述

  •  
  • 对于客户端来说,读/写(get/put)都是指定一个URI(“虚拟工作目录”),这个URI正好是NameNode,即HDFS分布式集群存储(分块X存入DataNodeX),过程对用户是透明的;
  • 对于HDFS底层来说,NameNode管理快Block于DataNode映射:
    • 客户端读(put)时,由NameNode切分成数据块Block,分配给若干DataNode
    • 客户端写(get)时,由NameNode返回映射,客户端通过网络去DataNode取分块
  • 每一块Block都有一定数量的副本Replicas,一旦某一DataNode损坏,不会影响数据的访问;而在正常情况下,不会白白浪费资源,高并发将平摊负载,提高吞吐量;

3. MapReduce原理概述

将统计逻辑分发到集群结点上,每一个NodeManager统计本地Block(为减少网络传输的负载与延迟,NodeManager与DataNode往往部署于同一节点)。

  • Map阶段:对原始数据集做本地统计,并发节点Mapper
  • Reduce阶段:通过网络获取Map阶段的中间结果(一个“数”),少数节点汇总全局分组统计(Reducer同样可以并发)。

猜你喜欢

转载自blog.csdn.net/weixin_38240095/article/details/82987226