Hadoop分布式存储与计算基础

需积分: 3 9 下载量 181 浏览量 更新于2024-08-23 收藏 2.16MB PPT 举报
"储存基本单元-Hadoop学习简介" 在深入探讨Hadoop的储存基本单元之前,我们先简单了解一下Hadoop的概述。Hadoop是一个由Apache基金会开发的分布式系统基础架构,它允许用户在不了解分布式系统底层细节的情况下编写分布式程序。Hadoop主要由两个核心组件构成:分布式存储(HDFS,Hadoop Distributed File System)和分布式计算(MapReduce)。Hadoop的设计理念包括可扩展性、经济性、可靠性以及高效性,使其成为处理和存储海量数据的理想选择。 在Hadoop的架构中,系统分为Master和Slave节点。Master节点主要由NameNode和JobTracker组成,它们分别负责文件系统的命名空间管理和作业调度。Slave节点则是由DataNode和TaskTracker构成,DataNode负责存储数据并提供数据定位服务,而TaskTracker则执行由JobTracker分配的任务。 Hadoop的储存基本单元是Block,它是HDFS中的逻辑存储单元,类似于操作系统的页。一个文件可以由多个Block组成,而一个Block也可以包含多个文件的部分内容。Block的大小由参数`dfs.block.size`设定,默认值为64MB。根据当前主流的硬件配置,建议设置为128MB,以平衡Map任务的运行速度和Map数量。设置过大会可能导致Map任务运行较慢,设置过小则可能增加Map的数量,影响效率。 HDFS为流式数据访问模式而设计,适合处理超大文件,例如几百MB到几百PB的数据。这种模式下,文件一旦写入就不再修改,只进行多次读取,从而提高了读取效率。此外,Hadoop能在普通商用硬件上运行,降低了运行成本。然而,为了实现高数据吞吐量,HDFS牺牲了一定的低延迟数据访问性能。 在Hadoop的MapReduce模型中,数据处理被划分为Map阶段和Reduce阶段。Map阶段将输入数据分割成键值对,然后进行局部处理;Reduce阶段则负责整合Map阶段的结果,完成全局计算。这种并行处理方式使得Hadoop能够高效地处理大规模数据集。 总结起来,Hadoop的Block是其存储的基本单位,大小可通过参数调整,以适应不同的应用场景。Hadoop的分布式架构、MapReduce计算模型以及HDFS的设计特点,共同构建了一个强大的大数据处理平台,能够在普通硬件上处理和分析海量数据,同时保证了系统的可扩展性和可靠性。