Hadoop 的模块结构

 

Hadoop是用来干什么的呢?

处理海量数据:量的大, 多, PB --ZB

|------>存储: 分布式, 集群的概念, 管理(主节点, 从节点),

| HDFS (hadoop distributed Filesystem)

|------>分析: 分布式, 并行,离线并行的计算框架,管理(主,从节点)对应mapreduce

Hadoop的特点以及思想

    扩容能力--->成本低---->高效率------>可靠性

HDFS + Mapreduce 思想

|------>尽可能移动计算到数据端,而非移动数据到计算端

|------>硬件和组件的故障是一种常态

HDFS 思想

|------>文件单次写入,并多次读取,文件副本分片保存

|------>顺序写入,流式顺序读取,面向大文件存储

Hadoop的分类还是比较清晰的,总体来说有hadoop1.x系列和hadoop2.x系列的内核:

Hadoop1.0|-->hadoop common

         |-->Hadoop Distributed File System

         |-->Hadoop MapReduce

Hadoop2.0|-->Hadoop Common

  |-->Hadoop Distributed File System

    |-->Hadoop MapReduce

  |-->Hadoop Yarn


Hadoop2.x项目的四大模块

 1、Hadoop Common

  为了支持其他模块的一些公共类,和框架。

 2、HDFS(Hadoop Distributed File System)

Hdfs提供高吞吐量的访问能力 , 用来存储数据。具有高容错性,高伸缩性的优点,允许用户将hadoop部署在廉价的硬件上,构建分布式系统。如下图是HDFS的存储图,Hdfs具有横向扩展性,布置单节点的hadoop时候,最小模型是一台master主机和两台slaver节点。如果要扩展datenode节点,只需要在准备好的虚拟机上面拷贝一份hadoop文件,然后导入master的公钥,最后修改一下配置文件(slaver文件,里面加入节点名字。在/etc/hosts文件里加入主机名和要求节点的ip)。

hdfs中节点:namenode   NN

                               datenode     DN

                               secondarynamenode  SN

 3、Hadoop Yarn 云的操作系统

给部署在yarn上的应用,分配资源,管理资源。(任务调度)job / application 调度。Yarn的架构图如下:(mapreduce跑在yarn系统上)。下边有更为详细的解析,这里只简单说明。

   Yarn 中的node:

               ResourceManager RM

NodeManager NM

 4、Hadoop Mapreduce

 

上图是基于yarn系统的并行的处理大数据的框架,Mapreduce担当并行的计算分析任务。允许用户在不了解分布式系统底层细节的情况下开发并行,分布式的应用程序。Map和reduce,map是映射,reduce是规约。我用自己的理解方式说,Map就是一种映射计算,让我们知道数据块的位置属性等,Reduce就是一种各种数据块分别求和的方式。以wordcount为例,在map阶段,map函数在每个单词后面加上一个1, 在reduce阶段,reduce函数将相同单词后面的1都加起来。其中hadoop框架实现过程中的排序。

分配如上图,也而已自定义函数来控制。



参考博客:http://blog.csdn.net/cloud_510/article/details/51224632








  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值