【赵渝强老师】Spark生态圈组件

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 本文介绍了Spark的生态圈体系架构,包括其核心执行引擎Spark Core、结构化数据处理模块Spark SQL、实时数据流处理模块Spark Streaming,以及机器学习框架MLlib和图计算框架GraphX。文中通过图片和视频详细解析了各模块的功能及访问接口。

b008.png

Spark的生态圈体系架构与Hadoop略有不同。因为在Spark中只有数据的计算部分,没有数据的存储部分,因为Spark的核心就是它的执行引擎。下图展示了Spark的生态圈体系,以及访问每个模块的访问接口。


视频讲解如下:


  • 离线执行引擎Spark Core

Spark Core是Spark的核心部分,也是Spark执行引擎。在Spark中执行的所有计算都是由Spark Core完成,它是一个种离线计算引擎。Spark Core提供了SparkContext访问接口用于提交执行Spark任务。通过该访问接口既可以开发Java程序,也可以开发Scala程序来分析和处理数据。SparkContext也是Spark中最重要的一个对象。


Spark中的所有计算都是Spark Core离线计算,因此Spark生态圈体系中不存在真正的实时计算。


  • 数据分析引擎Spark SQL


Spark SQL是Spark用来处理结构化数据的一个模块,它的核心数据模型是DataFrame,其访问接口是SQLContext。这里可以把DataFrame理解成是一张表。当DataFrame创建成功后,Spark SQL可支持DSL语句和SQL语句来分析处理数据。由于Spark SQL底层的执行引擎是Spark Core,因此Spark SQL执行的本质也是执行的一个Spark Core任务。


Spark SQL和Hive是目前大数据生态圈体系中使用最广泛的两个大数据分析引擎。


  • 流式计算引擎Spark Streaming

Spark Streaming是核心Spark API的扩展,它可实现可扩展、高吞吐量、可容错的实时数据流处理。但是Spark Streaming底层的执行引擎依然是Spark Core,这就决定了Spark Streaming并不是真正的流处理引擎,它是通过时间的采样间隔把流式数据编程小批量数据进行处理,其本质任然是批处理的离线计算。Spark Streaming访问接口是StreamingContext。


  • MLlib与GraphX

MLlib是Spark中支持机器学习算法的一个框架;而GraphX则是Spark支持图计算的框架。


MLlib和GraphX主要研究的是各种算法。因此在大数据体系中将不会作为重点的内容进行介绍。



相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
6月前
|
存储 分布式计算 负载均衡
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
218 0
|
SQL 存储 分布式计算
什么是 Spark?Spark 的核心模块、Spark 的核心组件
什么是 Spark?Spark 的核心模块、Spark 的核心组件
668 0
|
分布式计算 Hadoop Scala
五十、Spark组件部署(MINI版)
五十、Spark组件部署(MINI版)
五十、Spark组件部署(MINI版)
|
存储 缓存 分布式计算
Spark的核心组件和运行流程
Spark的核心组件和运行流程
255 0
Spark的核心组件和运行流程
|
分布式计算 运维 资源调度
大数据组件-Spark高可用架构部署
大数据组件-Spark高可用架构部署
大数据组件-Spark高可用架构部署
|
分布式计算 NoSQL Shell
使用spark-redis组件访问云数据库Redis
本文演示了在Spark Shell中通过spark-redis组件读写Redis数据的场景。所有场景在阿里云E-MapReduce集群内完成,Redis使用阿里云数据库Redis。
|
NoSQL Redis 分布式计算
使用spark-redis组件访问云数据库Redis
本文演示了在Spark Shell中通过spark-redis组件读写Redis数据的场景。所有场景在阿里云E-MapReduce集群内完成,Redis使用阿里云数据库Redis
2300 0
|
存储 分布式计算 API
Spark Core组件:RDD、DataFrame和DataSet
1. 介绍 spark生态系统中,Spark Core,包括各种Spark的各种核心组件,它们能够对内存和硬盘进行操作,或者调用CPU进行计算。
1657 0
|
存储 分布式计算 算法
Spark学习之基础相关组件(1)
Spark学习之基础相关组件(1) 1. Spark是一个用来实现快速而通用的集群计算的平台。 2. Spark的一个主要特点是能够在内存中进行计算,因而更快。 3. RDD(resilient distributed dataset弹性分布式数据集)表示分布在多个计算节点上可以并行操作的元素的集合,是Spark的主要编程抽象。 4. Spark是一个大一
2019 0