Hadoop关键技术理解
前言
大数据这几年特别火,从学校毕业后的工作也是和大数据相关的,但大数据具体是什么,有些什么关键技术?遇到有人问我这个问题的时候,只能说出比较有代表性的专有名词,如大数据的四个“V”以及hadoop, spark,storm等等,所以工作之余自己就查查资料,总结了一下对Hadoop关键技术的理解。
Hadoop
Hadoop的具体定义在网上一搜一大把,其关键技术主要是HDFS和MapReduce以及后来的yarn,具体如下所述:
一、HDFS
HDFS是分布式文件存储系统的简称,是根据google的GFS演化而来,HDFS的主要特点是能够分布式的存储海量数据,并通过调度系统(比如yarn)完成文件的高效管理。
1)HDFS的主要工作是数据的存储和读取,工作原理如下图所示:
2)总结:
1、从HDFS的工作原理可以看出,集群的核心是name_node,一般情况下为了集群的稳定,会使用双机热备模式。
2、集群必须满足各个节点间的网络是互通的,以及需要实现节点间的自动登录访问(ssh)
3、数据写入默认情况下会保存三份数据,数据的写入操作对网络的带宽消耗大,且相对数据读出操作更耗时,因此,HDFS适合存储那些不会经常变动的大量数据。
二、MapReduce
MapReduce是一种分布式的计算框架,能够有效处理大批量的数据。事实上,日常生活中遇到的很多问题,均可以抽象成Map和Reduce两个过程进行处理,因此,在设计MapReduce程序时,首先得明确Map是什么?Reduc