【云计算学习笔记】Spark简介

基本概念

  • RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象
  • DAG(Directed Acyclic Graph)有向无环图

为什么要用Spark?

主要是因为MapReduce模型是有缺陷的。一般来说,MapReduce将任务划分成Map和Reduce,中间再shuffle,有时候,我们会遇到一些迭代计算的任务,例如机器学习,会将Reduce输出的结果,重新作为Map的输入,而且这样的操作非常频繁,从而就会频繁地从硬盘的HDFS中存取数据,增大了时间开销。

而Spark则会将数据放到内存中计算,Spark的应用都是基于RDD的应用,能实现数据共享。每一次迭代,直接在内存中检索数据,从而节约执行时间。

Spark执行任务的特点:

  • 在内存中计算:中间结果缓存在内存中
  • 使用缓存在内存里面的RDD:能够执行快速的迭代查询任务

你可能感兴趣的:(【云计算学习笔记】Spark简介)