spark基础知识二

偶然看到spark的一篇概述PPT,来自中国移动,总结的很清晰全面。

这里对其主要内容小结,加深理解。


spark历史:

2009年诞生于伯克利大学。

2014年成为apache顶级项目。

spark成为最为活跃的大数据处理平台和框架。

特点:

架构先进:采用简洁的scala语言,akka作为通信框架,DAG作为执行引擎减少计算中间结果写入到HDFS,统一抽象的RDD。

高效:内存计算模型,提供cache机制。

易用:提供20+数据处理方式,相比map、reduce多了很多;支持四种语言。

提供整体解决方案:包括Spark Streaming、MLlib、GraphX、SparkSQL.

与hadoop无缝对接:可以使用yarn,HDFS,Mesos,standalone。

整体架构分四层:由上到下

工具层:SQL、MLlib等

计算层:spark

存储层:HBase、HDFS

资源层:Yarn、Mesos、standalone

核心概念:

driver、job、executor。具体见下图。


流程:见下图

spark on standalone:

master/worker是standalone角色;Driver/executor是spark角色。

master负责分配资源;driver负责生成task、任务调度。

核心模块:

RDD、scheduler、storage、shuffler.具体见下图。


RDD持久化:

可以持久化在内存,也可以是磁盘,一般将的是内存,因为spark是内存计算模型。

可以设置storagelevel的类型。

不同级别的数据,持久化的效果不同,不一定都能提高效率。

持久化函数persist()、cache()。

RDD依赖关系:子RDD与父RDD之间的关系。具体见下图。


窄依赖可以进行流水线计算,加快计算,提高效率。宽依赖则不行,意味着要进行shuffle操作。

RDD容错机制:

transformation中,如果出现错误。

若是窄依赖,则重进计算即可。

若是宽依赖,则计算代价大,可以加入checkpoint。

sheculer:

DAGScheluder;taskScheduler.

sparkSQL:

支持SQL无缝查询。

支持多种数据源。

支持JDBC、ODBC。

与Hive兼容。

应用场景:

腾讯的广点通,广告推送。

淘宝的推荐系统。


参考文章:

1、http://wenku.baidu.com/link?url=Su3o-Z7FOkDdwrTD3CsWMWzPMaiDMkm93JoLYQwbVvO0mzT6z2jGkb6If4i0xycElDCz_2fDm_B1yyuYYICyZyXl7obOzIY0i8FeCLHfvgm

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值