人工智能与大数据技术导论
高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。
●高性价比。与常见的大数据处理一体机、商用数据仓库等数据集市相比,Hadoop是开源的,设备通常采用高性价比的x86服务器,项目的软硬件成本因此会大大降低。
- 拓扑架构
如图3-9所示,Hadoop由许多元素构成。其最底层是HDFS,用于存储Hadoop集群中所有存储节点上的文件。HDFS的上一层是MapReduce分布式计算框架,该引擎由JobTrackers和TaskTrackers 组成。HBase利用HadoopHDFS作为其文件存储系统,利用Hadoop MapReduce 来处理 HBase中的海量数据,利用ZooKeeper 作为协同服务。
(1) HDFS
在Hadoop中,所有数据都被存储在HDFS上,而HDFS 由一个管理节点(NameNode)和N个数据节点(DataNode)组成,每个节点均为一台普通的x86服务器。HDFS在使用上与单机的文件系统很类似,一样可以建立目录,创建、复制和删除文件,查看文件内容等。但底层实现是把文件切割成Block(通常为64MB),这些Block分散存储在不同的DataNode上,每个Block还可以复制数份存储于不同的DataNode上,达到容错冗余的目的。NameNode是HDFS的核心,通过维护一些数据结构记录每个文件被切割成多少个Block,以及这些Block可以从哪些DataNode中获得、各个DataNode的状态等重要信息。
HDFS可以保存比一个机器的可用存储空间更大的文件,这是因为HDFS是一套具备可扩展能力的存储平台,能够将数据分发至成千上万个分布式节点及低成本服务器之上,并让这些
78