什么是spark?通俗易懂,一文读懂

简介: 什么是spark?通俗易懂,一文读懂

Spark是什么

官方定义: 定义:*Apache Spark是用于**大规模数据(large-scala data)**处理的**统一(unified)**分析引擎。*

分析引擎(计算引擎): 我们目前接触的引擎有:

    • MapReduce 分布式计算引擎
    • Spark 分布式内存计算引擎

    计算引擎: 通用的 可以执行开发人员提供的业务代码的一种框架.

    image.gif编辑

    Spark框架中有一个核心的数据结构: RDD

    Pandas中的数据结构是DataFrame, 多数API都是针对DF对象来进行的.

    同样, Spark的数据结构是RDD对象, 多数API都是针对RDD对象来进行的

    RDD对象是一个真正的分布式对象, Pandas的DataFrame则是一个单机的对象.

    拓展阅读 Hadoop 和 Spark 对比

    Hadoop Spark
    类型 基础平台, 包含计算, 存储, 调度 分布式计算工具
    场景 大规模数据集上的批处理 迭代计算, 交互式计算, 流计算
    价格 对机器要求低, 便宜 对内存有要求, 相对较贵
    编程范式 Map+Reduce, API 较为底层, 算法适应性差 RDD组成DAG有向无环图, API 较为顶层, 方便使用
    数据存储结构 MapReduce中间计算结果在HDFS磁盘上, 延迟大 RDD中间运算结果在内存中 , 延迟小
    运行方式 Task以进程方式维护, 任务启动慢 Task以线程方式维护, 任务启动快

    Spark四大特点

      • 速度贼快: 比MapReduce 快100倍以上( 基于内存计算 )
      • 易于使用: API 写起来很简单, 和pandas差不多(比pandas还简单)
      • 通用性强: 可用于离线批处理\ SQL处理\ 流计算 \ 机器学习计算\ 图计算
        • 离线批处理(Core)     SQL处理(SparkSQL)
          • 运行方式很多: 可以运行在 YARN \ 可以独立运行(StandAlone) \ 可以运行在云平台上 \ 可以运行在容器集群上 \ 等等等.

          Spark框架模块 - 了解



            • image.gif编辑
            • SparkCore : Spark的核心模块, 一切Spark的功能最底层由它提供
            • SparkSQL: Spark的结构化数据处理模块, 基于Core
            • SparkStreaming: Spark的流计算模块 基于Core
            • Spark MLib: 机器学习模块. 基于Core
            • Spark GraphX: 图计算模块 基于Core
            • StructuredStreaming: 结构化, 基于SparkSQL模块
            目录
            相关文章
            |
            7月前
            |
            机器学习/深度学习 人工智能 自然语言处理
            技术小白能看懂的ChatGPT原理介绍
            网上有关 ChatGPT 的原理介绍文章一大堆,要么是从 NLP 的历史开始讲起,要么是上数 GPT 3 代,内容都相对冗长和复杂。其实 ChatGPT 的原理并不难理解,我将以最通俗易懂的方式为技术小白解读,帮助大家更好地了解这一技术
            621 1
            技术小白能看懂的ChatGPT原理介绍
            |
            7月前
            |
            SQL 数据可视化 关系型数据库
            一文快速搞懂系列__一文快速搞懂SuperSet[实战案例]
            一文快速搞懂系列__一文快速搞懂SuperSet[实战案例]
            147 0
            |
            存储 分布式计算 资源调度
            五、【计算】Spark原理与实践(中) | 青训营笔记
            五、【计算】Spark原理与实践(中) | 青训营笔记
            五、【计算】Spark原理与实践(中) | 青训营笔记
            |
            SQL 分布式计算 资源调度
            五、【计算】Spark原理与实践(上) | 青训营笔记
            五、【计算】Spark原理与实践(上) | 青训营笔记
            五、【计算】Spark原理与实践(上) | 青训营笔记
            |
            SQL 分布式计算 Java
            五、【计算】Spark原理与实践(下) | 青训营笔记
            五、【计算】Spark原理与实践(下) | 青训营笔记
            五、【计算】Spark原理与实践(下) | 青训营笔记
            |
            存储 芯片
            一文读懂Marvell交换芯片
            一文读懂Marvell交换芯片
            一文读懂Marvell交换芯片
            |
            存储 SQL 分布式计算
            Spark 原理 | 青训营笔记
            Spark Core:Spark核心组件,它实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。
            235 0
            Spark 原理 | 青训营笔记
            |
            存储 分布式计算 资源调度
            【Spark】【复习】Spark入门考前概念相关题复习
            【Spark】【复习】Spark入门考前概念相关题复习
            371 0