Spark简介:

Spark是一个快速且通用的集群计算模型:

1、Spark是快速的:
快速是指处理几T到几批数据量的时候,他的处理时间是几秒钟或几分钟,相对于hadoop的几分钟到几小时是非常快速的,
通用是指Spark的应用场景比较多
Spark扩展了MapReduce的计算模型
Spark是基于内存计算的
当我们在处理一个大批量数据的时候,难免呢会产生一些中间的数据结果,怎么处理呢
第一种:放在硬盘中,硬盘会带来额外的写入写出的消耗
第二种:直接存放到内存中,放到内存中肯定比放到硬盘中要快一些。所以Spark的速度是很快的
举例(瑞士军刀,大刀,小刀等等)
Spark特点
2、Spark是通用的:
Spark容纳了其他的分布式系统拥有的功能,批处理(hadoop),迭代式处理(机器学习系统),交互式查询(hive查询)和流处理(storm)
当我们搭建一个Spark集群时,就相当于搭建了这么多的功能
优点:大大的降低了集群的维护成本,因为在生产环境中,集群的维护是相当耗时
Spark是高度开放的 :
提供了python java Scala sql的API,
与其他的大数据工具整合的很好,包括Hadoop,kafka等

Spark组件

spark core:

包括spark基本功能,包括任务调度,内存管理,容错机制
内部定义了RDDs(弹性分布式数据集),
提供多个APIs来创建和操作这些RDDs
应用场景,为其他组件提供底层服务

spark sql:

spark处理结构化数据的库,类似Hive SQL,MySql,
应用场景,主要为企业提供报表统计

spark streaming:

实时数据流处理组件,类似Storm,提供API操作实时流数据,
应用场景,企业中用来从Kafka中接收数据做实时统计

Mlib:

包含通用机器学习功能的包,包括聚类,回归,模型评估和数据导入。同时支持集群平台上的横向扩展
之前做机器学习都是Python比较多一点,Python的最大缺点是在单机上的,处理的数据量是有限的
而Mlib呢,是集群的,他的应用场景就是机器学习

Graphx:

处理图的库(例如社交网络的图),并进行图的并行计算
像spark steaming,spark sql一样,他也继承了RDD API
他提供了各种图的操作,和常用的图的算法,例如PangeRank算法
应用场景:就是图计算

Cluster Manager:

spark自带的集群管理

Spark紧密集成的优点:

spark底层优化,基于spark底层的组件也得到相应的优化,
紧密集成节省了组件的部署,测试时间
向spark增加新的组件时,其他组件,可立刻享用新组件的功能

Hadoop&Spark比较

Hadoop应用场景:

离线处理,时效性要求不高的场景:Hadoop中间数据落到硬盘上,导致Hadoop处理大数据时,时效性不高,时间在几分钟到几小时不等,但数据可以存储。
Spark应用场景:
时效性要求高的场景和机器学习:Spark基于内存,中间数据多在内存中,数据处理块,但Spark不具备hdfs存储功能,需借助hdfs

Doug Cutting 的观点:

spark这是个生态系统,每个组件都有其作用,各姗其职即可,
Spark不具有HDFS的存储能力,要借助HDFS等持久数据
大数据将会孕育出更多的新技术

最新文章

  1. [译文]选择使用正确的 Markdown Parser
  2. ping脚本
  3. <代码整洁之道>、<java与模式>、<head first设计模式>读书笔记集合
  4. ActiveMQ的几种消息持久化机制
  5. 在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程
  6. ubifs核心功能 -- 垃圾回收
  7. linux c学习笔记----进程创建(fork,wait,waitpid)
  8. angularJS常见问题汇总
  9. eclipse设置关联文件打开方式
  10. CentOS配置smaba与Windows共享文件
  11. 安装Genymotion与集成eclipse,最后有集成android studio
  12. sharepoint:各种阀值
  13. 详解go语言的array和slice 【一】
  14. python笔记二(mysql数据库操作)
  15. cisco交换机实现端口聚合
  16. 03 持续集成和部署/基础设施 - DevOps之路
  17. 重新拾取:TFS2017钉钉机器人源代码签入通知
  18. Python爬虫 selenium
  19. JQuery Checkbox 获取多选值 Checkbox选中个数
  20. OpenGIS

热门文章

  1. 51nod1238 最小公倍数之和 V3
  2. 【bzoj3680】平衡点 模拟退火
  3. 【POJ1187】陨石的秘密
  4. [Nginx] – 性能优化 – 配置文件优化
  5. H5新特性之geolocation
  6. JavaEE学习总结(十六)— Servlet
  7. Swift学习笔记5
  8. python---RabbitMQ(2)exchange中订阅者模式fanout<广播>,(一对多,发布一条消息,多人同时接收)
  9. C# 实现立体图形变换(vs2008)
  10. 词典的实现(3)--使用JAVA类库ArrayList实现Map数据结构