Spark 概述_Spark 的特点|学习笔记

本文涉及的产品
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 快速学习 Spark 概述_Spark 的特点

开发者学堂课程【大数据 Spark2020最新课程(知识精讲与实战演练)第一阶段Spark 概述_Spark 的特点】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/688/detail/11935


Spark 概述_Spark 的特点


Spark 就是一个计算框架,一个多用途的,可以运行在集群里的一个分布式的计算框架。

Spark 的这个特点,可以从四个角度去说:

首先第一个角度是速度,第二个角度是易用,第三个角度是通用,第四个角度是兼容。

Spark 的速度:

非常快,这也是使用 Spark 一个最重要的原因,Spar 在内存里面来进行计算的速度,大概是 Hadoop Mapreduce 的100倍,如果的数据无法存储在内存当中,是必须要落盘的话,在磁盘里面的运行速度, Spark 大概是 Hadoop Mapreduce 的十倍,并且在 Spark2.0以后,有一个叫做乌斯计划,为Spark注入了一些新的一些这个性能的优化点,比如乌斯计划里面允许使用对外内存等等的一些技术点。

Spark 的易用:

如果有一个算法,希望使用 HadoopMapReduce 来去实现,必须要把这个算法违 Map端和 Reduce 端两个端,但是如果使用了 Spark ,也就意味着可以使用一些诸如 where , SelecShow 这样的一些算子来去实现这个算法,这个算子 Spark 当中大概提供了几十种,可以想象一下,几十种算子配合来去完成一个算法,这是第一种方式。

第二种方式是使用Map和Reduce来完成一种算法,显然是第一种方式更好,Spark提供了更加灵活的这个API,并且支持多种语言,例如说的这个大数据领域里面的王者 Java那在比如说大数据里面也也一个非常常见的一个语言 Scala ,这些 Spark 都是支持的,那并且 Spark 也是使用函数式语言 Scala 来进行编写的, Spark 同时还支持在这个这个数据科学,然后在这个机器学习当中非常常见的Python ,Spark 还支持这个数据分析领域常见的这个R语言,并且这个Spark也是支持的好。

Spark 的通用:

可以有两点来去说,首先第一点因为 Spark 提供了很多的数据计算相相关的一些支持,Spark 可以为绝大多数的这个数据计算领域提供相应的支持, Spark 也是一个称之叫做负 stake ,也就是一个全站的一个工具啊,那包括这个 SQL 的执行,包括这个结构化数据的处理,非结构化数据的处理,图计算,机器学习这样的一些东西, Spark 都是支持的,包括流计算,Spark 也是支持的,这是第一点。

第二点说Spark是通用的,也可以从另外一个侧面去说就:Spark 不仅支持这样的一些完整的全站的一些工具,并且 Spark 可以在一份代码里面,一个工具里面去同时使用这么多工具,也就是说在这个一份代码里面,一个类当中一个函数当中,可以同时又写这个 SparkSQL ,又写这个结构化数据的处理,又写这个图计算的这个代码等等。

所以,Spark 不仅支持全站的数据处理,并且它还可以在同一个程序里使用好,那这一点,也是 Spark 非常划时代的一个体验上的进步,在 Spark 之前,应该是没有任何工具能提供出类似的体验。

Spark 是兼容性的:

兼容性,也可以从两点出发来去说,首先,Hadoop ,它是由三个组项来去组成,第一个,Yarn 是做集群调度的,也就是说一个分布式计算的程序,如何跑到集群当中,是由 Yarn 负责的。

在 Hadoop 当中还有第二个组件,叫做 HDFS,它是一个分布式的一个文件存储系统,这个第三个组成部分,就是所说的 Map Reduce ,是一个计算框架,Spark 其实和 MapReduce 的应用非常接近,它跟 Map Reduce是很像的。

但是 Spark 当中并没有提供集群的管理工具,或者没有提供一些这个分布式的文件存储系统,但是 Spark 可以和绝大多数的集群管理工具来进行整合,也可以和绝大多数的存储系统,包括数据库来进行整合。

Spark 可以运行在这个 Yarn 当中,也可以运行在它自己的集群的 Spark Standalo

ne 当中,也可以运行在 Mesos 和 Kubernets 当中,这是截止 Spark2.3 为止 Spark 可以运行的工具当中。

包括一些这个这个这个消息队列,那比如说 RabbitMQ 和 kafka 都可以与之进行整合,所以说 Spark也是兼容的。

总结:

首先 Spark 速度非常快的,对比这个 Hdoop MapReduce 快100倍快十倍。

第二点,Spark它是易用的,它提供了超过80种高级预算服务,让在进行算法的编写的时候更加的轻易

第三点,Spark 是通用的, Spark 是支持全站的数据处理,包括这个图计算,机器学习的 Spark都是支持的,并且 Spark 能够在同一个程序里面使用所有的这些工具。

第四部分主要讲述 Spark 是兼容的,即可以兼容现有的绝大多数的提取工具,也可以兼容现有的绝大多数的存储系统。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
缓存 分布式计算 并行计算
Spark3:RDD概述
Spark3:RDD概述
237 0
|
SQL 存储 分布式计算
Spark1:概述
Spark1:概述
155 0
|
SQL 分布式计算 数据挖掘
197 Spark DataFrames概述
197 Spark DataFrames概述
116 0
|
SQL 分布式计算 大数据
大数据Spark框架概述
大数据Spark框架概述
433 0
|
分布式计算 并行计算 大数据
Spark学习---day02、Spark核心编程(RDD概述、RDD编程(创建、分区规则、转换算子、Action算子))(一)
Spark学习---day02、Spark核心编程 RDD概述、RDD编程(创建、分区规则、转换算子、Action算子))(一)
599 1
|
SQL 分布式计算 API
Spark学习------SparkSQL(概述、编程、数据的加载和保存)
Spark学习------SparkSQL(概述、编程、数据的加载和保存)
302 2
|
12月前
|
分布式计算 资源调度 Hadoop
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
235 2
|
分布式计算 Java Scala
Spark学习---day03、Spark核心编程(RDD概述、RDD编程(创建、分区规则、转换算子、Action算子))(二)
Spark学习---day03、Spark核心编程(RDD概述、RDD编程(创建、分区规则、转换算子、Action算子))(二)
167 1
|
12月前
|
存储 分布式计算 算法
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
大数据-105 Spark GraphX 基本概述 与 架构基础 概念详解 核心数据结构
227 0
|
12月前
|
消息中间件 分布式计算 Kafka
大数据-98 Spark 集群 Spark Streaming 基础概述 架构概念 执行流程 优缺点
大数据-98 Spark 集群 Spark Streaming 基础概述 架构概念 执行流程 优缺点
206 0

热门文章

最新文章