Spark1 基本概念1
1 什么是 SparkSpark 是一种计算框架,是与 mapreduce 不一样的计算框架
他与 Hadoopmapreduce 相比具有以下优势:1)Spark 通过将中间结果缓存在内存,而不是磁盘,因此很适合于多阶段的作业,如需多次迭代的机器学习
而 mapreduce 则将中间结果每次都存到磁盘,速度下降很多
2)Spark 在通信方面采用 Akaa 框架的(角色)Actor 模型,并通过线程池复用线程来避免进程或线程启动和切换开销
而 Hadoopmapreduce 最初的设计是为了离线批量计算大文件,运行都是好几个小时,所以作业调度中秒级的开销根本没考虑和优化
3)Spark 任务在 Shuffle 中不是所有情景都需要排序
而 MapReduce 在数据 Shuffle 之前花费了大量的时间来排序
总之,Spark 在速度上要比 mapreduce 快很多
在流式计算方面,Spark 流计算与 Storm 相比,速度不及 Storm
Storm 可以达到毫秒级响应,而 Spark 只能达到秒级
但是 Spark 流计算更适合于计算较复杂的应用,特别是需要流数据与历史数据结合的计算
而 Storm 只能完成简单的计算,如广告点击率等
此外,Spark 的吞吐量要远高于 Storm
4MesosMesos 是一个资源管理框架一,提供类似于 YARN 的功能
YARN 是 Hadoop 中的一个资源管理框架1
5TachyonTachyon(读:忒 ki 样)是一个分布式内存文件系统,可以理解为内存中的 HDFS
为了提供更高的性能,将数据存储剥离 JavaHeap
用户可以基于 Tachyon 实现 RDD 或者文件的跨应用共享,并提供高容错机制,保证数据可靠性
6Zookeeper用于解决分布式系统中一致性问题
7 大数据大