spark是一个快速且通用的集群计算平台
上park是快速的
spark扩充了流行的mapreduce计算模型
spark是基于内存的计算
spark是通用的
spark的设计容纳了其他分布式系统拥有的功能:批处理,迭代式计算,交互查询和流处理等
优点:降低了维护成本
spark是高度开放的
提供了python,Java,Scala,sql的API和丰富的内置库
spark和其他的大数据工具整合的很好,包括Hadoop,Kafka等
Spark组件
spark core
包含spark的基本功能,包含任务调度,内存管理,容错机制等
内部定义了RDDs弹性分布式数据集
提供了很多APis来创建和操作这些RDDs
应用场景,喂其他组件提供底层的服务
spark sql
是spark处理结构化数据的库,就像hive sql,mysql一样
应用场景,企业中用来做报表统计
spark streaming
是实时数据流处理组件,蕾丝storm
spark steaming提供了AP来操作实时流数据
应用场景,企业中用来从Kafka接收数据做实时统计
Mlib
一个包含通用机器学习功能的包,machine learning lib
包含分类,聚类,回归等,还包括模型评估和数据导入
MLlib提供的上面这些方法,都支持集群上的横向扩展
Graphx
上处理图的库(例如,社交网络图),并进行图的并行计算
像spark steaming,spark sql一样,它也即成了RDD API
cluster managers
就是集群管理,spark自带一个集群管理是单独调度器
常见集群管理包括Hadoop yarn,apache mesos
紧密集成的优点:
spark底层优化了,基于spark底层的组件也相应的得到优化
紧密集成,节省了各个组件组合使用时的部署和测试等时间
向spark增加新的组件时,其他组件可立刻享用新组件等功能
spark鱼