大数据的Hadoop集群环境节点数设置

关于hadoop集群的硬件资源

 

 

大数据是当下最火热的名词,但真的大数据落地可行性方案估计更多也就是看几张报表,写几个T-SQL语句罢了,然后开始炒作我们xxx项目利用大数据技术……如是等等。这样才能跟上时代赶上潮流,自己戴上大数据的帽子。在资本市场宣扬一番,得到更多的关注而已。

其实,大数据的概念或者是技术架构并没有最终的定论,各方说法都有争议并且持续存在着。而大多数真正可以落地的技术方案估计就是hadoop为核心的一些开源分布式解决方案,以及跟hadoop相关的或者配套的凯源系统,例如:spark/hue/sqoop/hive等等。

敢说自己有大数据的产品,其实都应该有着强大的技术团队背景,所以,下面的内容,仅对一些实际的技术实施点做些描述,请不要过分吐槽。

想到搭建一个大数据或者说hadoop集群环境,那么我们还需要做点技术准备,首先我们要清楚,hadoop同样是有三种形式,即单机环境,模拟分布式环境(说法不一),完全分布式环境。其实,前两种环境大多是初学者练手,或是开发阶段,因为没有太多的硬件资源,所以做不到完全分布式环境的部署。也就是说只要我们弄清楚完全分布式环境的搭建,也就是通常所说的集群式搭建,就可以了。

搭建集群环境势必要选择合适的服务器硬件

那么我们如何选择硬件资源呢,也许要为公司省电钱哦。不要着急,无外乎几个要素。

第一,我们预期的集群有多少个节点(node)

这个点是我们需要认真考虑的,当然节点越多性能越好,但是我们的项目到底需要多少,要根据实际需求,这是最大的硬件成本投入。理论上讲,一个hadoop集群中NameNode/SecondaryNameNode/DataNode需要单独分配节点,所以至少需要三台服务器来支撑。

第二,服务器的硬件配置如何选择

直白的说服务器和电脑一样,主要几个参数cpu,内存,硬盘。(就是都会贵一些)

当然是越高越好,这个不用解释。

我们就按照三个节点来设计,那么三个节点都在负责什么事情,就变的重要。

大数据集群需要各个节点间频繁的数据交换,所以千兆网卡,交换机很重要哦。

还有,上面提到的三个节点很重要的是namenode所在的服务器,它将调动协调整体集群进行工作。这个服务器会有一个进程resourcemanager会很消耗资源,所以,如果资金有限,先保证这个节点服务器的硬件资源。另外,存储资源,根据预估的数据量动态的采购吧,但要注意的是secondary namenode与namenode两台节点服务器的存储应该是接近的,因为有一台机器用来做备份的。

第三,就是集群服务器节点数量

例如,存储量如何预计,下面给出一个例子,如果有偏差不要对号入座。

我们假设,现在的业务数据为10Tb,那么我们预计每天增长10G,那么我们应该预计一年后,数据量的大小需求是(10Tb+10G*365天)*3*2=81Tb,乘以3是考虑备份的需求量,乘以2是为了各个节点的系统运算空间。

如果我们再假设,我们每个节点的存储空间为10Tb,那我们自少需要81/10即9台用于存储的节点服务器。

那么这个集群为了满足年底的需求,至少需要9+2(NameNode和SecondaryNameNode)=11台服务器才能满足。

第四,软件的选择

说完硬件,就该轮到hadoop软件的选择,例如:操作系统,JDK版本,MySQL,Hive版本。

 

你可能感兴趣的:(大数据)