继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Hadoop与大数据的关系,学大数据就要学Hadoop

慕村9548890
关注TA
已关注
手记 1260
粉丝 227
获赞 990

来源:科多大数据

一说大数据,连带的搜索词必然是Hadoop。

那么,

学习大数据,为什么要从Hadoop学起?

大数据的特点是什么,大数据与Hadoop有什么关系?

webp

首先,我们说说什么是大数据?

所谓大数据,就是从各种类型的数据中,快速获得有价值信息的能力。大数据是需要新处理模式才能具有更强的决策力、洞察力和流程优化能力的海量、高增长率和多样化的信息资产。它是对那些超出正常处理范围和大小、迫使用户采用非传统处理方法的数据集所下的定义。

区别于过去的海量数据,大数据的特点可以概况为4个V:Volume、Variety、Value和Velocity,即大量、多样、价值密度低、快速。

第一,数据体量大。大数据一般指在10TB(1TB=1024GB)规模以上的数据量,目前正在跃升到PB(1PB=1024TB)级别。不仅存储量大,计算量也大。

第二,数据类型多。除了数值数据,还有文字、声音、视频等,包括网络日志、视频、图片、地理位置信息等多种类型的格式。由于数据来自多种数据源,数据种类和格式日渐丰富,已冲破了以前所限定的结构化数据范畴,囊括了半结构化和非结构化数据。

第三,价值密度低。以视频为例,不间断监控视频中,有价值的数据可能仅有一两秒。找到有价值的信息有如沙里淘金,其价值却又弥足珍贵。

第四,处理速度快。在数据量非常庞大的情况下,也能做到数据的实时处理。这一点和传统的数据挖掘技术有着本质的不同。

大数据技术是指从各种类型的大体量数据中快速获得有价值信息的技术。这是大数据的核心问题。目前所说的大数据不仅指数据本身的规模,也包括采集数据的工具、平台和数据分析系统。大数据研发的目的是发展大数据技术并将其应用到相关领域,通过解决大体量数据处理问题促进其突破性发展。因此,大数据时代带来的挑战不仅体现在如何处理大体量数据并从中获取有价值的信息,也体现在如何加强大数据技术研发。大数据所涉及的关键技术大致包括6个方面:数据采集与数据管理、分布式存储和并行计算、大数据应用开发、数据分析与挖掘、大数据前端应用、数据服务和展现。

其次,大数据与Hadoop

大数据技术正在向各行各业渗透。Hadoop作为数据分布式处理系统的典型代表,已经成为该领域事实的标准。但Hadoop并不等于大数据,它只是一个成功的处理离线数据的分布式系统,大数据领域还存在众多其他类型的处理系统。

伴随大数据技术的普及,Hadoop因其开源的特点和卓越的性能成为一时的新宠,甚至有人认为大数据就是Hadoop,其实这是一个误区。Hadoop只是处理离线数据的分布式存储和处理系统。除了Hadoop,还有用于处理流数据的Storm、处理关系型数据的Oracle、处理实时机器数据的Splunk……目前主流的大数据系统很多,Hadoop只是其中的代表。

1、 Hadoop的核心模块

Hadoop Common:Hadoop的公用应用模块,是整个Hadoop项目的核心,为Hadoop各子项目提供各种工具,如配置文件和日志操作等,其他Hadoop子项目都是在此基础上发展起来的。

Hadoop Distributed File System(HDFS):Hadoop分布式文件系统,提供高吞吐量应用程序数据访问,并具有高容错性。对外部客户机而言,HDFS就像一个传统的分级文件系统,可以进行增删改查或重命名等常规文件操作。但实际上HDFS中的文件被分成块,然后复制到多个计算机中,这与传统的RAID架构大不相同。HDFS特别适合需要一次写入、多次读取的超大规模数据集的应用程序。

Hadoop YARN:一个作业调度和群集资源管理框架。

Hadoop MapReduce:基于YARN的大型数据分布式并行编程模式和程序执行框架,是Google的MapReduce的开源实现。它帮助用户编写处理大型数据集的并行运行程序。MapReduce隐藏了分布式并行编程的底层细节,开发人员只需编写业务逻辑代码,而无需考虑程序并行执行的细节,从而大大提高了开发效率。

Apache的其他与Hadoop相关的项目还有很多。

2、 Hadoop的特点

作为分布式计算领域的典型代表,Hadoop比其他分布式框架有更多的优点。

可扩展性:Hadoop可以在不停止集群服务的情况下,在可用的计算机集簇间分配数据并完成计算,这些集簇可以方便地扩展到数千节点中。

简单性:Hadoop实现了简单并行编程模式,用户不需要了解分布式存储和计算的底层细节即可编写和运行分布式应用,在集群上处理大规模数据集,所以使用Hadoop的用户可以轻松搭建自己的分布式平台。

高效性:Hadoop的分布式文件系统具有高效的数据交互设计,可以通过并行处理加快处理速度。Hadoop还是可伸缩的,能够在节点间动态地移动数据,并保证各个节点的动态平衡,因此处理速度非常快。

可靠性:Hadoop的分布式文件系统将数据分块储存,每个数据块在集群节点上依据一定的策略冗余储存,确保能够针对失败的节点重新分布处理,从而保证了数据的可靠性。

成本低:依赖于廉价服务器,它的成本比较低,任何人都可以使用。

在大数据时代,Hadoop以其优越的性能受到业界的广泛关注,已经成为大数据处理领域事实上的标准。如今,Hadoop在诸多领域大显身手。随着开源社区和国际众多国际技术厂商对这一开源技术的积极支持与持续的大量投入,相信不久的将来,Hadoop技术会被拓展到更多的应用领域。

最后,为什么要从Hadoop学起

1、 最最主要的原因就是Hadoop的开源。相对于其他产品(如微软的产品)都是闭源的,我们不能拿到那些产品的源代码,因此不方便在它们的基础上进行开发,而Hadoop就能轻易解决这一问题。这很像我们熟知的安卓和iOS,很多手机都会选择在开源的安卓基础上进行二次开发。不管是Hadoop还是安卓,不得不说Google都做出了不小的贡献。

2、 Hadoop的历史并不悠久,也就十来年的历史,却已经发展成了一个庞大的生态系统,只要和海量数据相关的领域,都会找到Hadoop的身影,各个分支在当下也十分流行,如Spark。并且,全球各地的开发者都在贡献着自己的代码。可以说,Hadoop是一个极其开放的平台。

3、  当然,现在做大数据基础平台的并不只有Hadoop,很多大数据公司都开发有自己的大数据基础平台,如星环科技,MapR,Hortonwork,Cloudera等。这四家应该是全球最大的四家了,其中三家在硅谷,一家在上海,不过,这4家都是在开源的Hadoop的基础上发展起来的。所以,Hadoop功不可没,它能衍生出许多新的东西出来。

4、  还有就是在方便大家学习的角度来说,Hadoop的资源最多,包括大学里面的老师也都喜欢靠Hadoop发表论文,学习起来方便很多。

5、 学术界对与Google相关的产品都有特殊的情节,这无疑给拥有Google血统的Hadoop笼罩了一层光环。



作者:卿卿老祖
链接:https://www.jianshu.com/p/69d3863393b7


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP