Hadoop包含两个部分: Hadoop分布式文件系统 (Hadoop Distributed File System, HDFS) 和Map/Reduce。
1.Hadoop分布式文件系统
HDFS具有高容错性,可以部署在廉价的硬件设备之上。HDFS很适合大数据集的应用,并且提供了对数据读写的高吞吐率。HDFS是一个主/从结构,就通常的部署来说,在宿主上只运行一个命名节点,而在每一个从属上运行一个数据节点。命名节点管理着整个分布式文件系统,对文件系统的操作 (如建立、删除文件和文件夹) 都是通过命名节点来控制。HDFS采取了副本策略,其目的是为了提高系统的可靠性和可用性。HDFS的副本放置策略是三个副本: 一个放在本节点上,一个放在同一机架中另一个节点上,还有一个副本放在另一个不同机架中的一个节点上。(www.xing528.com)
2.Hadoop的Map Reduce
Map Reduce的名字源于这个模型中的两项核心操作: Map和 Reduce。Map是把一组数据一对一的映射为另外的一组数据,映射规则由一个函数来指定。Reduce是对一组数据进行归约,归约的规则由一个函数指定 (Pehcevski等,2005)。用户指定一个Map函数,通过这个Map函数处理键/值 (key/value) 对,并且产生一系列的中间键/值对,并且使用Reduce函数来合并所有的具有相同键值的中间键值对应的值部分。在Map阶段,输入数据被分割成由各个节点处理的连续块。用户使用的Map功能将每个原始数据处理成中间数据集。通过该分割功能,每个中间数据被发送到Reduce节点。分割是一个典型的哈希过程,所有等键值的中间数据都将被发送到一个Reduce节点。Reduce节点将所有的输入数据进行排序,并使用一个提供给用户的Reduce函数输出已经排序的Map,产生Map Reduce过程的最终输出。所有带有给定键值的输入都将交由Reduce处理 (Khun, 2002)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。