hadoop是学大数据必备项目,但你真的了解吗?

大数据作为一个新兴且高端的词,受到来自己各个领域的追捧,除了各大企业对大数据侧目之外,一大批转行者和待业者也纷纷将目光聚焦在了大数据开发。对于这些想要进入大数据开发领域的人而言,在学习的过程中对于hadoop的学习就不可或缺,因此,关于hadoop的的基础知识你就更应该清楚。

对于hadoop,我们可以首先了解一下其核心,这个核心大体包括两个方面。

其一是hdfs,它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,适合那些有着超大数据集(large data set)的应用程序。

对于HDFS的设计特点是主要包含以下5个特点:

1、大数据文件,非常适合上T级别的大文件或者一堆大数据文件的存储,如果文件只有几个G甚至更小就没啥意思了。

2、文件分块存储,HDFS会将一个完整的大文件平均分块存储到不同计算器上,它的意义在于读取文件时可以同时从多个主机取不同区块的文件,多主机读取比单主机读取效率要高得多得都。

3、流式数据访问,一次写入多次读写,这种模式跟传统文件不同,它不支持动态改变文件内容,而是要求让文件一次写入就不做变化,要变化也只能在文件末添加内容。

4、廉价硬件,HDFS可以应用在普通PC机上,这种机制能够让给一些公司用几十台廉价的计算机就可以撑起一个大数据集群。

5、硬件故障,HDFS认为所有计算机都可能会出问题,为了防止某个主机失效读取不到该主机的块文件,它将同一个文件块副本分配到其它某几个主机上,如果其中一台主机失效,可以迅速找另一块副本取文件。

其二是4MapReduce,其是一套从海量源数据提取分析元素最后返回结果集的编程模型,将文件分布式存储到硬盘是第一步,而从海量数据中提取分析我们需要的内容就是MapReduce做的事了。

MapReduce的基本原理是将大的数据分析分成小块逐个分析,最后再将提取出来的数据汇总分析,最终获得我们想要的内容。当然怎么分块分析,怎么做Reduce操作非常复杂,Hadoop已经提供了数据分析的实现,我们只需要编写简单的需求命令即可达成我们想要的数据。

Hadoop是一个开发和运行处理大规模数据的软件平台,是Appach的一个用java语言实现开源软件框架。在实际的应用当中大数据扮演的角色在不断的加强,而且,作为一款开源软件,其功能和应用在后期还将得到持续的更新和维护,所以,作为作为一个想要进入大数据领域的而言,学懂大数据内容当中的hadoop至关重要。

猜你喜欢

转载自blog.csdn.net/d55dffdh/article/details/81304113