0
点赞
收藏
分享

微信扫一扫

Spark基础

雪域迷影 2022-01-24 阅读 44

目录

什么是Spark?

Spark和Hadoop什么关系

Spark的优点

spark适合做什么?

Spark的核心模块

 Spark的系统架构


什么是Spark?

Apache Spark是一种多语言引擎,用于单节点机器或集群上执行数据工程,数据科学和机器学习。

简单来说:spark是一种大数据计算框架,是一种基于内存快速处理计算大数据的引擎。支持多种语言的API接口,可以单节点和集群部署,其又提供了用于数据分析,机器学习的库。

Spark和Hadoop什么关系

Hadoop只是一套工具的总称,也可以说是一个大数据生态。它包含HDFS,YARN,MapReduce三部分,分别表示分布式文件存储系统(用于存储海量数据),资源调度(资源管理系统),计算(并行处理框架,实现任务分解和调度)。

早期的大数据处理方案:用YARN调度资源,读取HDFS内存储的文件内容进行MapReduce计算。(需要用java实现,比较麻烦)。

MapReduce简单来说就是分开处理再合并统计,需要频繁读写文件,导致运行速度很慢,这时基于内存的Spark出现了,它是Hadoop的替代品,目的就是为了提高运行速度。

Spark的优点

spark适合做什么?

Spark是数据计算处理的王者,支持PB级的处理,支持实时场景和离线场景。如:

  • 日志文件,传感器数据的流处理。
  • 机器学习。
  • 数据分析师做交互式分析。
  • 各系统间的数据集成和清洗。

Spark的核心模块

  • Spark Core

提供了Spark最基础和最核心的功能,是其他功能拓展的基础。

  • Spark SQL

可以使用SQL操作结构化数据的组件。

  • Spark Streaming

Spark平台上针对实时数据进行流式计算的组件,提供了丰富的数据处理流的API。

  • Spark MLlib

Spark提供的一个机器学习算法库,提供了模型评估,数据导入等额外的功能,还提供了一些更底层的机器学习原语,学起来较困难。

Spark GraphX

Spark面向图计算提供的框架与算法库。

 Spark的系统架构

Spark架构采用了分布式计算中的Master-Slave模型。Master是对应集群中含有Master进程的节点(主节点),Slave是集群中含有Worker进程的节点。如图:

  •  Cluster Manager:在Standalone模式中即为Master(主节点),控制整个集群,监控Worker。在YARN模式中为资源管理器。
  • Worker:从节点(子节点),负责控制计算节点,启动Executor或Driver。在YARN模式中为NodeManager,负责计算节点的控制。
  • Driver:运行Appplication的main()函数并创建SparkContext.
  • Executor:执行器,在worker node 上执行任务的组件,用于启动线程池运行任务。每个Application拥有独立的一组Executors.
  • SparkContext:整个应用的上下文,控制应用的生命周期。
举报

相关推荐

0 条评论