科普文:从大数据到Hadoop,Spark,Storm

大数据,官方定义是指那些数据量特别大、数据类别特别复杂的数据集,这种数据集无法用传统的数据库进行存储,管理和处理。大数据的主要特点为数据量大(Volume),数据类别复杂(Variety),数据处理速度快(Velocity)和数据真实性高(Veracity),合起来被称为4V。

大数据中的数据量非常巨大,达到了PB级别。而且这庞大的数据之中,不仅仅包括结构化数据(如数字、符号等数据),还包括非结构化数据(如文本、图像、声音、视频等数据)。这使得大数据的存储,管理和处理很难利用传统的关系型数据库去完成。在大数据之中,有价值的信息往往深藏其中。这就需要对大数据的处理速度要非常快,才能短时间之内就能从大量的复杂数据之中获取到有价值的信息。在大数据的大量复杂的数据之中,通常不仅仅包含真实的数据,一些虚假的数据也混杂其中。这就需要在大数据的处理中将虚假的数据剔除,利用真实的数据来分析得出真实的结果。

大数据分析(Big Data Analysis)

大数据,表面上看就是大量复杂的数据,这些数据本身的价值并不高,但是对这些大量复杂的数据进行分析处理后,却能从中提炼出很有价值的信息。对大数据的分析,主要分为五个方面:可视化分析(Analytic Visualization)、数据挖掘算法(Date Mining Algorithms)、预测性分析能力(Predictive Analytic Capabilities)、语义引擎(Semantic Engines)和数据质量管理(Data Quality Management)。

可视化分析是普通消费者常常可以见到的一种大数据分析结果的表现形式,比如说百度制作的“百度地图春节人口迁徙大数据”就是典型的案例之一。可视化分析将大量复杂的数据自动转化成直观形象的图表,使其能够更加容易的被普通消费者所接受和理解。

数据挖掘算法是大数据分析的理论核心,其本质是一组根据算法事先定义好的数学公式,将收集到的数据作为参数变量带入其中,从而能够从大量复杂的数据中提取到有价值的信息。著名的“啤酒和尿布”的故事就是数据挖掘算法的经典案例。沃尔玛通过对啤酒和尿布购买数据的分析,挖掘出以前未知的两者间的联系,并利用这种联系,提升了商品的销量。亚马逊的推荐引擎和谷歌的广告系统都大量使用了数据挖掘算法。

预测性分析能力是大数据分析最重要的应用领域。从大量复杂的数据中挖掘出规律,建立起科学的事件模型,通过将新的数据带入模型,就可以预测未来的事件走向。预测性分析能力常常被应用在金融分析和科学研究领域,用于股票预测或气象预测等。

语义引擎是机器学习的成果之一。过去,计算机对用户输入内容的理解仅仅停留在字符阶段,不能很好的理解输入内容的意思,因此常常不能准确的了解用户的需求。通过对大量复杂的数据进行分析,让计算机从中自我学习,可以使计算机能够尽量精确的了解用户输入内容的意思,从而把握住用户的需求,提供更好的用户体验。苹果的Siri和谷歌的Google Now都采用了语义引擎。

数据质量管理是大数据在企业领域的重要应用。为了保证大数据分析结果的准确性,需要将大数据中不真实的数据剔除掉,保留最准确的数据。这就需要建立有效的数据质量管理系统,分析收集到的大量复杂的数据,挑选出真实有效的数据。

分布式计算(Distributed Computing)

对于如何处理大数据,计算机科学界有两大方向:第一个方向是集中式计算,就是通过不断增加处理器的数量来增强单个计算机的计算能力,从而提高处理数据的速度。第二个方向是分布式计算,就是把一组计算机通过网络相互连接组成分散系统,然后将需要处理的大量数据分散成多个部分,交由分散系统内的计算机组同时计算,最后将这些计算结果合并得到最终的结果。尽管分散系统内的单个计算机的计算能力不强,但是由于每个计算机只计算一部分数据,而且是多台计算机同时计算,所以就分散系统而言,处理数据的速度会远高于单个计算机。

过去,分布式计算理论比较复杂,技术实现比较困难,因此在处理大数据方面,集中式计算一直是主流解决方案。IBM的大型机就是集中式计算的典型硬件,很多银行和政府机构都用它处理大数据。不过,对于当时的互联网公司来说,IBM的大型机的价格过于昂贵。因此,互联网公司的把研究方向放在了可以使用在廉价计算机上的分布式计算上。

服务器集群(Server Cluster)

服务器集群是一种提升服务器整体计算能力的解决方案。它是由互相连接在一起的服务器群所组成的一个并行式或分布式系统。服务器集群中的服务器运行同一个计算任务。因此,从外部看,这群服务器表现为一台虚拟的服务器,对外提供统一的服务。

尽管单台服务器的运算能力有限,但是将成百上千的服务器组成服务器集群后,整个系统就具备了强大的运算能力,可以支持大数据分析的运算负荷。Google,Amazon,阿里巴巴的计算中心里的服务器集群都达到了5000台服务器的规模。

大数据的技术基础:MapReduce、Google File System和BigTable

2003年到2004年间,Google发表了MapReduce、GFS(Google File System)和BigTable三篇技术论文,提出了一套全新的分布式计算理论。

MapReduce是分布式计算框架,GFS(Google File System)是分布式文件系统,BigTable是基于Google File System的数据存储系统,这三大组件组成了Google的分布式计算模型。

Google的分布式计算模型相比于传统的分布式计算模型有三大优势:首先,它简化了传统的分布式计算理论,降低了技术实现的难度,可以进行实际的应用。其次,它可以应用在廉价的计算设备上,只需增加计算设备的数量就可以提升整体的计算能力,应用成本十分低廉。最后,它被Google应用在Google的计算中心,取得了很好的效果,有了实际应用的证明。

后来,各家互联网公司开始利用Google的分布式计算模型搭建自己的分布式计算系统,Google的这三篇论文也就成为了大数据时代的技术核心。

主流的三大分布式计算系统:Hadoop,Spark和Storm

由于Google没有开源Google分布式计算模型的技术实现,所以其他互联网公司只能根据Google三篇技术论文中的相关原理,搭建自己的分布式计算系统。

Yahoo的工程师Doug Cutting和Mike Cafarella在2005年合作开发了分布式计算系统Hadoop。后来,Hadoop被贡献给了Apache基金会,成为了Apache基金会的开源项目。Doug Cutting也成为Apache基金会的主席,主持Hadoop的开发工作。

Hadoop采用MapReduce分布式计算框架,并根据GFS开发了HDFS分布式文件系统,根据BigTable开发了HBase数据存储系统。尽管和Google内部使用的分布式计算系统原理相同,但是Hadoop在运算速度上依然达不到Google论文中的标准。

不过,Hadoop的开源特性使其成为分布式计算系统的事实上的国际标准。Yahoo,Facebook,Amazon以及国内的百度,阿里巴巴等众多互联网公司都以Hadoop为基础搭建自己的分布式计算系统。

Spark也是Apache基金会的开源项目,它由加州大学伯克利分校的实验室开发,是另外一种重要的分布式计算系统。它在Hadoop的基础上进行了一些架构上的改良。Spark与Hadoop最大的不同点在于,Hadoop使用硬盘来存储数据,而Spark使用内存来存储数据,因此Spark可以提供超过Hadoop100倍的运算速度。但是,由于内存断电后会丢失数据,Spark不能用于处理需要长期保存的数据。

Storm是Twitter主推的分布式计算系统,它由BackType团队开发,是Apache基金会的孵化项目。它在Hadoop的基础上提供了实时运算的特性,可以实时的处理大数据流。不同于Hadoop和Spark,Storm不进行数据的收集和存储工作,它直接通过网络实时的接受数据并且实时的处理数据,然后直接通过网络实时的传回结果。

Hadoop,Spark和Storm是目前最重要的三大分布式计算系统,Hadoop常用于离线的复杂的大数据处理,Spark常用于离线的快速的大数据处理,而Storm常用于在线的实时的大数据处理。

End.

本文转自d1net(转载)

时间: 2024-10-15 01:15:43

科普文:从大数据到Hadoop,Spark,Storm的相关文章

哈,我自己翻译的小书,马上就完成了,是讲用python处理大数据框架hadoop,spark的

花了一些时间, 但感觉很值得. Big Data, MapReduce, Hadoop, and Spark with Python   Master Big Data Analytics and Data Wrangling with MapReduce Fundamentals using Hadoop, Spark, and Python   作者: The LazyProgrammer (https://lazyprogrammer.me)

如何挑选合适的大数据或Hadoop平台?

文章讲的是如何挑选合适的大数据或Hadoop平台,今年,大数据在很多公司都成为相关话题.虽然没有一个标准的定义来解释何为 "大数据",但在处理大数据上,Hadoop已经成为事实上的标准.IBM.Oracle.SAP.甚至Microsoft等几乎所有的大型软件提供商都采用了Hadoop.然而,当你已经决定要使用Hadoop来处理大数据时,首先碰到的问题就是如何开始以及选择哪一种产品.你有多种选择来安装Hadoop的一个版本并实现大数据处理.本文讨论了不同的选择,并推荐了每种选择的适用场合

大数据漫谈:Spark如何引燃机器学习?

文章讲的是大数据漫谈:Spark如何引燃机器学习,如今,再讨论大数据,无论是互联网行业还是传统行业似乎都有话说.大数据改变了很多,也带来了很多.人工智能作为大数据的一个重要分支,也纷纷被各大企业划入未来的规划之内.不久前,李开复就曾说过,未来的人工智能市场将比如今大火的移动互联市场要大10倍. 本文将讨论Spark的开源机器学习库Spark ML.从Spark 1.6开始,Spark ML软件包中基于DataFrame的API推荐明显多于基于RDD的API,但是还未完全取代.从Spark 2.0

Hadoop专业解决方案-第1章 大数据和Hadoop生态圈

一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop生态圈小组已经翻译完成,在此对:译者:贾艳成 QQ:496830205 表示感谢. 二.意见征集: 本章节由<Hadoop专业解决方案群:313702010>翻译小组完成,为小组校验稿,已经通过小组内部校验通过,特此面向网络征集意见,如果对本章节内容有任何异议,请在评论中加以说明,说明时,请标明行号,也可以以修订的方式,发送

大数据和Hadoop时代的维度建模和Kimball数据集市

维度建模已死? 在回答这个问题之前,让我们回头来看看什么是所谓的维度数据建模. 为什么需要为数据建模? 有一个常见的误区,数据建模的目的是用 ER 图来设计物理数据库,实际上远不仅如此.数据建模代表了企业业务流程的复杂度,记录了重要的业务规则和概念,并有助于规范企业的关键术语.它清晰地阐述.协助企业揭示商业过程中模糊的想法和歧义.此外,可以使用数据模型与其他利益相关者进行有效沟通.没有蓝图,不可能建造一个房子或桥梁.所以,没有数据模型这样一个蓝图,为什么要建立一个数据应用,比如数据仓库呢? 为什

大数据计算新贵Spark在腾讯雅虎优酷成功应用解析

Spark作为Apache顶级的开源项目,项目主页见http://spark.apache.org.在迭代计算,交互式查询计算以及批量流计算方面都有相关的子项目,如Shark.Spark Streaming.MLbase.GraphX.SparkR等.从13年起Spark开始举行了自已的Spark Summit会议,会议网址见http://spark-summit.org.Amplab实验室单独成立了独立公司Databricks来支持Spark的研发. 为了满足挖掘分析与交互式实时查询的计算需求

大数据与Hadoop之间是什么关系?

大数据在近些年来越来越火热,人们在提到大数据遇到了很多相关概念上的问题,比如云计算. Hadoop等等.那么,大数据是什么.Hadoop是什么,大数据和Hadoop有什么关系呢? 大数据概念早在1980年,著名未来学家阿尔文·托夫勒提出的概念.2009年美国互联网数据中心证实大数据时代的来临.随着谷歌MapReduce和 GoogleFile System (GFS)的发布,大数据不再仅用来描述大量的数据,还涵盖了处理数据的速度.目前定义:大数据(big data),或称巨量资料,指的是所涉及的

大数据利器Hadoop的应用现状和发展趋势

本文讲的是大数据利器Hadoop的应用现状和发展趋势,Hadoop是Apache软件基金会旗下的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapReduce(Google MapReduce的开源实现)为核心的Hadoop为用户提供了系统底层细节透明的分布式基础架构.HDFS的高容错性.高伸缩性等优点允许用户将Hadoop部署在低廉的硬件上,形成分布式系统;MapReduce分布式编程模型允许用户在不了解分布式系

大数据与Hadoop:并不能简单划等号

当前,我国已经进入大数据时代,在这样的时代背景下,Hadoop的应用也逐渐深入,正在从互联网企业,逐渐拓展到电信,金融,政府,医疗这些传统行业.虽然目前Hadoop应用场景还是以日志存储.查询和非结构化数据处理为主,但是Hadoop技术的不断成熟以及生态系统相关产品的完善,包括Hadoop对SQL不断加强的支持,以及主流商业软件厂商对Hadoop支持的不断增强,会带动Hadoop 渗透到越来越多的应用场景中. 2013年是中国大数据的应用落地年,越来越多的行业用户开始重视并启动大数据相关的项目.

大数据与Hadoop之间的关系

我们都听过这个预测:到2020年,电子数据存储量将在2009年的基础上增加44倍,达到35万亿GB.根据IDC数据显示,截止到2010年,这个数字已经达到了120万PB,或1.2ZB.如果把所有这些数据都存入DVD光盘,光盘高度将等同于从地球到月球的一个来回也就是大约 480,000英里. 对于那些喜欢杞人忧天的人来说,这是数据存储的末日即将到来的不祥预兆.而对于机会主义者们而言,这就好比是个信息金矿,随着技术的进步,金矿开采会变得越来越容易. 走进大数据,一种新兴的数据挖掘技术,它正在让数据处