好程序员大数据教学点睛:Hadoop基础篇,Hadoop包含两个部分:node
1.Hadoop Distributed File System (Hadoop分布式文件系统)程序员
HDFS具备高容错性,而且能够被部署在低价的硬件设备之上。HDFS很适合那些有大数据集的应用,而且提供了对数据读写的高吞吐率。HDFS是一个master/slave的结构,就一般的部署来讲,在master上只运行一个Namenode,而在每个slave上运行一个Datanode。编程
HDFS支持传统的层次文件组织结构,同现有的一些文件系统在操做上很相似,好比你能够建立和删除一个文件,把一个文件从一个目录移到另外一个目录,重命名等等操做。Namenode管理着整个分布式文件系统,对文件系统的操做(如创建、删除文件和文件夹)都是经过Namenode来控制。分布式
二、MapReduce的实现函数
MapReduce是Google 的一项重要技术,它是一个编程模型,用以进行大数据量的计算。对于大数据量的计算,一般采用的处理手法就是并行计算。至少现阶段而言,对许多开发人员来讲,并行计算仍是一个比较遥远的东西。MapReduce就是一种简化并行计算的编程模型,它让那些没有多少并行计算经验的开发人员也能够开发并行应用。oop
MapReduce的名字源于这个模型中的两项核心操做:Map和 Reduce。简单的说来,Map是把一组数据一对一的映射为另外的一组数据,其映射的规则由一个函数来指定,好比对[1, 2, 3, 4]进行乘2的映射就变成了[2, 4, 6, 8]。Reduce是对一组数据进行归约,这个归约的规则由一个函数指定,好比对[1, 2, 3, 4]进行求和的归约获得结果是10,而对它进行求积的归约结果是24。大数据