什么是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模块
            目录
            相关文章
            |
            3月前
            |
            SQL 分布式计算 大数据
            【大数据技术Spark】DStream编程操作讲解实战(图文解释 附源码)
            【大数据技术Spark】DStream编程操作讲解实战(图文解释 附源码)
            96 0
            |
            3月前
            |
            分布式计算 Shell 开发工具
            Spark编程实验二:RDD编程初级实践
            Spark编程实验二:RDD编程初级实践
            50 1
            |
            存储 分布式计算 资源调度
            五、【计算】Spark原理与实践(中) | 青训营笔记
            五、【计算】Spark原理与实践(中) | 青训营笔记
            五、【计算】Spark原理与实践(中) | 青训营笔记
            |
            SQL 分布式计算 资源调度
            五、【计算】Spark原理与实践(上) | 青训营笔记
            五、【计算】Spark原理与实践(上) | 青训营笔记
            五、【计算】Spark原理与实践(上) | 青训营笔记
            |
            SQL 分布式计算 Java
            五、【计算】Spark原理与实践(下) | 青训营笔记
            五、【计算】Spark原理与实践(下) | 青训营笔记
            五、【计算】Spark原理与实践(下) | 青训营笔记
            |
            存储 芯片
            一文读懂Marvell交换芯片
            一文读懂Marvell交换芯片
            一文读懂Marvell交换芯片
            |
            存储 SQL 分布式计算
            Spark 原理 | 青训营笔记
            Spark Core:Spark核心组件,它实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。
            213 0
            Spark 原理 | 青训营笔记
            |
            SQL 存储 缓存
            Spark入门(一篇就够了)
            Spark入门(一篇就够了)
            316 0
            Spark入门(一篇就够了)
            |
            存储 分布式计算 资源调度
            【Spark】【复习】Spark入门考前概念相关题复习
            【Spark】【复习】Spark入门考前概念相关题复习
            345 0