《Spark核心源码分析与开发实战》读书笔记之一

第1章 Spark系统概述

1.1 Spark是什么

1. Spark比Hadoop快在哪里

(1)Spark使用内存计算,而Hadoop使用IO

(2)Hadoop的计算是按部就班一步一步进行的,而Spark则是提前生成了DAG,优化了运算路径

 

1.2 Spark生态系统BDAS

1. BDAS:伯克利数据分析栈

2. Spark Core

Spark将数据在分布式环境下分区,然后将作业转化为有向无环图(DAG),减少了多次计算之间中间结果I/O开销,并分阶段进行DAG的调度和任务的分布式并行处理。Spark采用容错的,高伸缩性的AKKA作为通信框架,减少了多线程并发运行所带来的不确定性。还采用多线程池模型来减少task的启动开销

RDD可以想象为一个个partition,RDD之间相互具有依赖关系

计算跟着数据走

3. Spark SQL

4. Spark Streaming:核心思想是微批处理

相对于Storm的优势:吞吐量更大,更高效的容错处理

5. Spark GraphX

核心抽象是:一种点和边都带有属性的有向多重图

6. MLlib

支持四种常见的机器学习问题:分类,回归,聚类和协同过滤

7. Tachyon

高容错,高性能的开源的分布式内存文件系统(内存中的HDFS)

8. BlinkDB

在海量数据上进行交互式SQL查询的大规模并行查询引擎

核心思想:通过一个自适应优化框架,随着时间的推移,从原始数据建立并维护一组多维样本,通过一个动态样本选择策略,选择一个适度大小的示例。

猜你喜欢

转载自blog.csdn.net/canglan211/article/details/83038455