Hadoop分布式集群环境搭建是每个入门级新手都非常头疼的事情,因为你可能花费了很久的时间在搭建运行环境,最终却不知道什么原因无法创建成功。但对新手来说,运行环境搭建不成功的概率还蛮高的。
在之前的分享文章中给hadoop新手入门推荐的大快搜索DKHadoop发行版,在运行环境安装方面的确要比其他的发行版hadoop要简单的多,毕竟DKHadoop是对底层重新集成封装的,对与研究hadoop尤其是入门级新手来说是非常友好的一个发行版!关于DKHadoop的安装留在后面再给大家分享,本篇就跟大家聊一聊关于hadoop分布式集群环境搭建规划。
1、分布式机器架构图:
其中机器1主节点,机器2从节点,机器3、机器4等都是计算节点。当主节点宕机后从节点代替主节点工作,正常状态是从节点和计算节点一样工作。这种架构设计保证数据完整性。
首先我们保证每台计算节点上分别有一个DataNode节点和NodeManager节点。因为都是计算节点,真正干活的。在数量上我们要保证。那么NameNode和ResourceManager是两个非常重要的管理者,我们客户端的请求,第一时间与NameNode和ResourceManager打交道。NameNode负责管理HDFS文件系统的元数据,客户端不管是读文件还是写文件,都要首先找到NameNode获取文件的元数据,再进行文件的操作。ResourceManager也是如此,它负责管理集群中的资源和任务调度,你也可以把它视为“大数据操作系统”。客户端能否提交应用并运行,就看你的ResourceManager是否正常。
2、达到多大规模的数据,才值得用大数据的方式来处理?
第一,从数据量角度,但是并无确定的答案,一般定性角度来说,你觉得这个数据量单机处理不了,比如内存限制,时间过久等,就用集群,但是要降低时间,你的处理逻辑必须能分布式处理,定量就是一般数据或者未来的数据量会达到PB级别(可能GB)或以上就要用分布式,当然前提也是你的处理逻辑可以进行分布式。
第二,从算法角度,或者处理逻辑的时间复杂度来说,比如虽然你的数据记录不是很多,但是你的算法或者处理逻辑的时间复杂度是n的平方,甚至更高,同时你的算法可以进行分布式设计,那么就考虑用分布式,比如你的记录虽然只有1w, 但是时间复杂度确是n的平方,那么你想想单机要多久,要是你的算法可以进行分布式处理,那么就考虑用分布式。
3、制约大数据处理能力的几个问题
a、网络带宽
网络是联接计算机的纽带,这个纽带当然越宽越好,这样可以在计算机资源许可的情况下,在单位时间内传输更多的数据,让计算机处理更多的数据。现在企业网络中,普遍采用的多是百兆网络,也有千兆,万兆虽然有,但是用得不多。
b、磁盘
所有数据,不管它从哪里来,最终都要存进不同的硬盘里面,或者闪存盘。闪存盘的读写效率比硬盘高得多,但是缺点也明显:价格贵、容量小。现在的存储介质主要还是硬盘,硬盘有顺序读写和随机读写两种模型。顺序读写是磁头沿着磁道,好象流水线一样,有规律的向前滚动进行。随机读写是磁头跳跃着,找到磁道上留空的地方,把数据写进去。很明显,顺序读写比随机读写效率高,所以系统架构师在设计大数据存储方案时,都是以顺序读写为主要选择。
c、计算机的数量
分布式的集群环境下,计算机的规模当然越大越好。这样在数据等量的情况下,计算机数量越多,分配给每台计算机的数据越少,处理效率自然就高了。但是计算机的数量也不是可以无限增加,集群对计算机规模的容纳有一个峰值,超过这个峰值,再提升就很困难,处理不好还会下降。原因主要来自木桶短板效应、边界效应、规模放大效应。根据多年前的一个测试,当时以Pentium 3和Pentium 4芯片为基础平台,配合100M网络,在上面运行LAXCUS大数据系统。当达到千台计算机的规模时,瓶颈开始显露出来。如果现在用新的X86芯片,加上更高速的网络,应该是能够容纳更多的计算机。
d、代码质量
这不是关键问题,但是是企业必须关注的一个问题。这和程序员编写的计算机代码质量有关。实际上,每个大数据产品都是半成品,它们只是提供了一个计算框架,要实际应用到企业生产中,里面还有大量业务编码需要程序员来实现。要使大数据应用达到高质量,技术负责人要做好前期设计,清楚和规范业务流程,程序员拿到方案后,用统一格式编写代码。这是双方互相配合的过程。或者说,要做好协同和协调的事情。
相关推荐
TaskTracker 负责任务执行,HMaster 负责 HBase 集群管理,HRegionServer 负责 HBase Region 服务器,SecondaryNameNode 负责 NameNode 的热备,HQuorumPeer 负责 Zookeeper 集群管理。 在该环境中,Hadoop 是核心...
本教程“Hadoop集群搭建详细简明教程”将带你逐步走进Hadoop的世界,了解并掌握如何构建一个高效稳定的Hadoop集群。 Hadoop是由Apache基金会开发的一个开源项目,其核心包括两个主要组件:Hadoop Distributed File ...
Hadoop集群搭建详解 Hadoop是一个开源的分布式计算平台,由 Apache 软件基金会开发,核心组件包括HDFS(Hadoop Distributed Filesystem)和MapReduce。HDFS是一个分布式文件系统,提供了对文件系统的命名空间和...
### 基于Hadoop集群搭建HBase集群详解 #### 一、引言 随着大数据技术的迅猛发展,海量数据的高效存储与处理成为企业关注的重点。Hadoop作为一款能够处理大量数据的基础框架,被广泛应用于各类场景之中。然而,在...
8. "HadoopCluster_Vol.10.rar"、"HadoopCluster_Vol.7.rar"、"HadoopCluster_Vol.8.rar":这些可能是Hadoop集群搭建过程的多个阶段,可能包含了更多关于集群管理、监控、优化等方面的内容。 综上所述,这个压缩包...
在IT领域,Hadoop是一个广泛使用的开源框架,用于处理和存储大规模数据集。Hadoop集群的搭建是一项...通过这份文档,你可以学习到Hadoop集群的全貌,理解分布式计算的核心概念,并掌握搭建和管理Hadoop集群的实际技能。
Hadoop集群安装笔记是一篇详细的安装指南,旨在帮助新手快速搭建Hadoop学习环境。以下是该笔记中的重要知识点: Hadoop集群安装目录 在安装Hadoop集群之前,需要准备好安装环境。安装环境包括Java Development Kit...
在搭建 Hadoop 集群之前,需要规划好所有的软件目录和数据存放目录,便于后期的管理与维护。 2. 集群安装前的环境检查 2.1 时钟同步 所有节点的系统时间要与当前时间保持一致,否则集群运行会出现异常。时钟同步...
"基于Docker搭建Hadoop集群" 在本文中,我们将介绍如何基于Docker搭建Hadoop集群。Hadoop是大数据处理的常用工具,而Docker则是当前最流行的容器化技术。通过将Hadoop部署到Docker容器中,我们可以更方便地管理和...
在Linux环境下搭建Hadoop集群是一项复杂但至关重要的工作,它涉及到多个步骤,包括理解Hadoop的基本概念、配置网络环境、安装必要的软件以及调整系统参数。本文将深入探讨这些知识点。 首先,我们需要了解Hadoop的...
在Linux环境下搭建Hadoop集群是一项复杂但至关重要的任务,它为大数据处理提供了强大的分布式平台。以下将详细介绍如何在一台虚拟机上安装多台Linux服务节点,并构建Hadoop集群环境。 首先,我们需要准备一个基础...
搭建Hadoop集群时,尤其是实现高可用(High Availability,简称HA)模式的集群,可以确保系统即使在节点发生故障时也能继续正常工作,从而提供更高的可靠性和可用性。本文将从多个方面对Hadoop集群高可用搭建进行...
总结来说,搭建Hadoop集群环境首先需要准备虚拟机环境,安装操作系统,配置虚拟机工具以便于文件传输,安装并配置JDK环境以支持Java程序的运行,设置SSH免密码登录以便于集群节点之间的安全通信,最后还需要为集群中...
这些配置文件定义了Hadoop集群的行为,如名称节点、数据节点、资源管理器等的地址。 在`hdfs-site.xml`中,设置`dfs.replication`参数来定义数据块的副本数,通常设为3以保证容错性。同时,要指定`dfs.nameservices...
### Hadoop集群搭建总结 #### 一、Hadoop概述与应用场景 Hadoop是一个由Apache基金会维护的开源分布式计算框架,其主要目标是处理大规模数据集的存储与计算问题。通过Hadoop,用户能够轻松地在分布式环境中开发和...
本篇指南旨在为初学者提供一个全面且详细的Hadoop集群搭建流程,以便更好地理解和掌握大数据处理的基本架构。 #### 二、硬件资源配置 假设已经拥有三台服务器,它们的主机名分别为`master`、`slave1`、`slave2`,...