文档章节

为什么学习Spark?

vieky
 vieky
发布于 2014/12/05 14:52
字数 1028
阅读 88
收藏 0

讲到Spark,我们要先讲将大数据,因为Spark是一个处理大数据的平台。那什么是大数据呢?大数据也称为海量数据,通常都是指TG级、PB级的数据,但是随着时间的流逝和验证,一些人们对大数据也发生了观念上的转变,而是把对企业有价值的数据称为大数据,它不一定大,但要有价值。

        近二十年来,随着计算机技术和互联网技术的高速发展,计算机在记录着人类的日常活动,如手机通讯、网站访问、微博留言、视频上传、商品买卖、物流运送。。。,无处不在的社会活动和商业活动正在源源不断地产生着各种各样的数据,而这些数据正以不可思议的速度积累着,从GB级向着TB级、PB级发展。

        面对如此海量的数据,一方面是这些信息如同巨大的宝藏等待人们去挖掘,如果能善以利用,这些数据将引导现在社会的科研和商业活动,进入一个黄金时代;另一方面,这些数据的迅猛发展,挑战着包括数据中心基础设施和数据分析基础架构在内的数据处理的各个环节。幸运的是,近几年云计算技术的发展和各种计算框架的出现,使得分析和掌握大数据中蕴藏的无尽信息、知识、智慧成为可能。

        下面我们看看两个图:

为什么学习Spark? - mmicky - mmicky 的博客

这是一个google的热力图,使用专用设备跟踪参与调查的访问者的眼球在网页上的停留轨迹。这种图直接显示了用户的视觉体验——他们在页面的哪些区域停留的时间更长。

为什么学习Spark? - mmicky - mmicky 的博客

另一个是微博的传播图,可以看出微博的传播途径的规律。

        很明显,通过这些数据的分析,得到其中的规律和潜在的信息,我们可以更好的将有限的资源利用到更有效果的地方。

        那么如何去挖掘这些信息呢?让我们看看大数据分析平台一览图

为什么学习Spark? - mmicky - mmicky 的博客

        面对琳琅满目、令人有些眼花缭乱的各种产品,该做何种选择?我们选择了Spark。为什么?

1:All-In-One的解决方案

        谈到Spark,大多数的人首先想到的是内存计算框架,计算速度很快等概念。但对于系统架构师或IT信息部门主管来说,更吸引其眼光的应该是Spark的All-In-One的解决方案。我们来看看最新的Spark Stack:

为什么学习Spark? - mmicky - mmicky 的博客

除了核心的Spark Core Engine外,Spark提供了应用在不同场景上的处理工具:

  • 应用于流式计算的Spark Streaming

  • 应用于即席查询(Ad-hoc)的Spark SQL

  • 应用于机器学习(数据挖掘)的MLlib

  • 应用于图处理的GraphX

  • 将R扩展成并行计算的SparkR

  • 还有权衡精度和速度的查询引擎BlinkDB

这意外着采用Spark将减少人力和资金的投入,降低的系统的复杂性,减轻维护的工作量。

为什么学习Spark? - mmicky - mmicky 的博客

2:天下武功,唯快不破

运行速度快,开发速度快是Spark最耀眼的特点:

  • Spark号称在磁盘上的运行速度是MapReduce的10倍以上,在内存上的运行速度是MapReduce的100以上;这不仅仅是Spark是基于内存计算,更因为是Spark采用了DAG算法减少了IO开销。

为什么学习Spark? - mmicky - mmicky 的博客

  • Spark应用程序d的开发量比MapReduce少2-5倍

为什么学习Spark? - mmicky - mmicky 的博客

3:迅猛发展的趋势

  • 2009年由Berkeley’s AMPLab开始编写最初的源代码

  • 2010年开放源代码

  • 2013年6月进入Apache孵化器项目

  • 2014年成为Apache的顶级项目之一

  • 目前已经有30+公司100+开发者在提交代码

  • Hadoop最大的厂商Cloudera宣称加大Spark框架的投入来取代Mapreduce

  • Spark1.0.0发布。。。

本文转载自:http://mmicky.blog.163.com/blog/static/15029015420144120426570/

vieky
粉丝 12
博文 55
码字总数 47106
作品 0
长沙
高级程序员
私信 提问
Cloudera Developer之Spark 及 Hadoop 开发员培训(CCA-175)

学习如何将数据导入到 Apache Hadoop 机群并使用 Spark、Hive、Flume、Sqoop、Impala 及其他 Hadoop 生态系统工具对数据进行各种操作和处理分析。 培训详情地址:https://www.huodongjia.co...

活动家
2017/07/28
239
0
Kylin 2.0 Spark Cubing 优化改进

Kylin 2.0 引入了Spark Cubing beta版本,本文主要介绍我是如何让 Spark Cubing 支持 启用Kerberos的HBase集群,再介绍下Spark Cubing的性能测试结果和适用场景。 Spark Cubing 简介 在简介S...

大数据之路
2012/08/28
330
0
2018最新版本的spark面试题及答案

Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,Spark提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)...

嘿你好夏天
2018/04/03
0
0
Spark 和 Hadoop 是朋友不是敌人

6月15日,IBM 宣布计划大规模投资 Spark 相关技术,此项声明会促使越来越多的工程师学习 Spark 技术,并且大量的企业也会采用 Spark 技术。 Spark 投资的良性循环会使 Spark 技术发展更加成熟...

oschina
2015/07/14
9.8K
15
Spark2.1.0之运行环境准备

学习一个工具的最好途径,就是使用它。这就好比《极品飞车》玩得好的同学,未必真的会开车,要学习车的驾驶技能,就必须用手触摸方向盘、用脚感受刹车与油门的力道。在IT领域,在深入了解一个...

beliefer
2018/05/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Replugin借助“UI进程”来快速释放Dex

public static boolean preload(PluginInfo pi) { if (pi == null) { return false; } // 借助“UI进程”来快速释放Dex(见PluginFastInstallProviderProxy的说明) return PluginFastInsta......

Gemini-Lin
今天
4
0
Hibernate 5 的模块/包(modules/artifacts)

Hibernate 的功能被拆分成一系列的模块/包(modules/artifacts),其目的是为了对依赖进行独立(模块化)。 模块名称 说明 hibernate-core 这个是 Hibernate 的主要(main (core))模块。定义...

honeymoose
今天
4
0
CSS--属性

一、溢出 当内容多,元素区域小的时候,就会产生溢出效果,默认是纵向溢出 横向溢出:在内容和容器之间再套一层容器,并且内部容器要比外部容器宽 属性:overflow/overflow-x/overflow-y 取值...

wytao1995
今天
4
0
精华帖

第一章 jQuery简介 jQuery是一个JavaScript库 jQuery具备简洁的语法和跨平台的兼容性 简化了JavaScript的操作。 在页面中引入jQuery jQuery是一个JavaScript脚本库,不需要特别的安装,只需要...

流川偑
今天
7
0
语音对话英语翻译在线翻译成中文哪个方法好用

想要进行将中文翻译成英文,或者将英文翻译成中文的操作,其实有一个非常简单的工具就能够帮助完成将语音进行翻译转换的软件。 在应用市场或者百度手机助手等各大应用渠道里面就能够找到一款...

401恶户
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部