码迷,mamicode.com
首页 > 其他好文 > 详细

Hadoop

时间:2016-05-24 01:40:20      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:

1、Hadoop包含一个完整的生态圈

    Hive  数据仓库

    HDFS   分布式文件系统

    MapReduce   并行调度框架

 2、MapReduce过程

    Mapper和Reduce的入参和出参都是key/value

三、HDFS

   1、HDFS性质

  1.     1、支持超大文件,甚至支持PB
  2.     2、廉价硬件
  3.     3、数据访问延迟可能不是很低
  4.     4、集群里面的文件的元信息(目录,文件名等)存储在namenode的内存里面,所以整个集群里面支持的文件的个数就是内存所能存储的元信息的上限。支持上百万甚至更多的文          件都是支持的。
  5.    5、多用户写入、任意修改文件
  6.       文件可能只有一个writer,而且只支持文件进行末尾附加,不支持随机写入

   2、HDFS数据块

     1、磁盘的块一般是512字节,HDFS一般为64M

    2、HDFS的块为什么设为64M 

       1、Map任务通常一次只处理一个块里面的任务,如果设的太大,并行度不够

       2、磁盘读取数据首先寻道,然后再读取数据,如果设的太小,则磁盘寻道时间和读取数据时间的比值会比较大。

    3、namenode和datanode

      1、工作玉master-slave模式,一个namenode和多个datanode

         1、namenode管理整个文件系统的命名空间。它维护着文件系统树及整棵树内的所有文件和目录。这些信息以两个文件的形式存储在本地磁盘上,命名空间镜像文件和编辑日志文件。namenode也记录每个文件中的各个块所在数据节点的信息。

        2、datanode收客户端和namenode的调度负责存储和检索数据,并且定时的向namenode发送他们所存储的块的列表

        3、没有namenode,文件系统将无法使用。如果namenode数据损坏,则整个文件系统的数据将全部无法恢复。所以对namenode的容错很重要。

       4、namenode的容错机制(在实际应用中一般是通过主备实现高可用)

          1、讲元数据进行备份,如在写入本地磁盘的同时,写入网络系统。

          2、运行一个备namenode(和数据库的主备类似),因为主备之间是有数据延迟的,所以备替代主之后还是有一定的数据丢失的。

       5、文件系统的扩展

           集群里面只有一个namenode,可以有很多个datanode,所以文件系统的限制在namenode上。联邦HDFS可以运行多个namenode,每个namenode只负责维护整个文件系统的一部分命名空间。这样就能使得文件系统无限扩展了。

 

Hadoop

标签:

原文地址:http://www.cnblogs.com/YDDMAX/p/5522058.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!