首页 > 其他 > 详细

PPT整理

时间:2021-05-22 23:34:56      阅读:49      评论:0      收藏:0      [点我收藏+]

Spark SQL&&DataFrame

Spark SQL是一种结构化的数据处理模块。它提供了一个称为Data Frame的编程抽象,也可以作为分布式SQL查询引擎。
一个DataFrame相当于一个列数据的分布式的采集组织。在一个关系数据库或R/Python中 DataFrame的概念相当于一个表,但如果处于丰富的优化引擎下,可以有多种方式构建DataFrame,如:结构化数据文件,文件在Hive,外部数据库,或存在的RDDs。The DataFrame API是可用于Scala,Java,或Python。

Spark Streaming

Spark Streaming是针对实时数据进行流式计算的组件,提供了丰富的数据流的API。数据可以从许多来源Kafka,Flume,Twitter,ZeroMQ, Kinesis,TCP sockets并且可以使用复杂的算法和高级功能表示处理Map,Reduce,Join和Window。 最后,处理后的数据可以被推送到文件系统,数据库

MLlib

MLlib(machine learning library)是Spark提供的可扩展的机器学习库。MLlib中已经包含了一些通用的学习算法和工具,如:分类、回归、聚类、协同过滤、降维以及底层的优化原语等算法和工具。
MLlib提供的API主要分为以下两类:
spark.mllib包中提供的主要API。
spark.ml包中提供的构建机器学习工作流的高层次的API

GRaphx

GraphX在Graphs和Graph-parallel并行计算中是一个新的部分,GraphX是Spark上的分布式图形处理架构,可用于图表计算

习题

(1)Spark的四大特点有什么(A,B,C,D)
A.迅速 B.通用 C.易用 D.支持多种资源管理器
(2)Spark Core包括什么(B,D)
A.Hash B.Mllib C. SparkContext D.Spark SQL
(3)Spark的分布式计算流程(排序)是(A,D,E,B,C,F,G)
A.代码生成DAG B.FinalStage提交任务级 C. TaskSets提交任务 D.将DAG划分为Stage E. Stage生成作业 F. Tasks执行任务 G. Results跟踪结果
(4)Spark2.X新特征简单讲述三方面,分别为(A,B,C)
A.精简的API B.Spark作为编译器 C.智能优化 D.Spark Core 的优化
(5)Spark的架构设计分为几个部分(B)
A.3 B.4 C.5 D.6
(6)Spark 的四大组件下面哪个不是 (D ) A.Spark Streaming    B. Mlib  C Graphx    D.Spark R
(7)Spark 支持的分布式部署方式中哪个是错误的 (D ) A standalone B spark on mesos   C spark on YARN D Spark on local
(8)Stage 的 Task 的数量由什么决定 (A ) A Partition B Job C Stage D TaskScheduler
(9)Spark特点包括(A,B,C,D)
A.迅速    B.通用  C.易用    D.支持多种资源管理器
(10).Task 运行在下来哪里个选项中 Executor 上的工作单元 (C ) A Driver program B. spark master  C.worker node D Cluster manager

Spark SQL是Spark用来操作结构化数据的组件。(对)
Spark则是一个专门的,用来对那些分布式存储的大数据进行处理的工具,它会进行分布式数据的存储。(错)
Spark是基于内存的技术。(对)
MapReduce上的不同作业在同一个节点运行时,会各自启动一个JVM(Java虚拟机)。而Spark同一节点的所有任务都可以在一个JVM上运行。(对)
Spark的构架设计,它分为4个组成部分,分别为Cluster Manager、Worker、Executor、Driver API。(错)
Spark要比Hadoop快 10x-100x。(错)
Spark的存在将代替Hadoop。(错)
Spark支持多种资源管理器。(对)
Spark可以非常方便地与其他的开源产品进行融合。 (对)
MLlib是Spark提供的一个机器学习算法库。(对)

常用术语

Application:Spark的应用程序,包含一个Driver program和若干个Executor
SparkContext:Spark应用程序的入口,负责调度各个运算资源,协调各个Worker Node 上的Executor
Driver Program:驱动。运行Application的main()函数并且创建SparkContext
Executor:执行者。是Application运行在worker node 上的一个进程,该进程负责运行Task,并且负责讲数据存在内存或者磁盘上。每个Application会申请各自的Executors来处理任务
Cluster Manager:在集群上获取资源的外部服务(例如:Standalone、Mesos、Yarn)
Worker Node:集群中任何可以运行Application代码的节点,运行一个或多个Executor进程
Task:任务。运行在Executor上的工作单元
Job:作业。SparkContext提交的具体Action操作,常和Action对应
Stage:阶段。每个Job会被拆分很多组任务(task),每组任务被称为stage,也称为TaskSet
DAGScheduler:根据Job构建基于Stage的DAG,并提交Stage给TaskScheduler
TaskScheduler:将Taskset提交给Worker node集群运行并返回结果
Transformations/Action:Spark API的两种类型:Transformation返回值还是一个RDD;Action返回值不是一个RDD,而是一个集合。所有的Transformation都是采用的懒策略,如果只是讲Transformation提交是不会执行计算的。计算只有Action被提交才会被触发

首先是Spark的架构设计,Spark的架构设计分为四个组成部分,细节如图:
(1)Cluster Manager:Spark的集群管理器,主要负责资源的分配与管理。集群管理器分配的资源属于一级分配,它将各个Worker上的内存、CPU等资源分配给应用程序,但是并不分配Executor(执行器)的资源。目前,Standalone、YARN、Mesos、EC2等都可以作为Spark的集群管理器。
(2)Worker:Spark的工作节点。对Spark应用程序来说,由集群管理器分配得到资源的Worker节点主要负责以下工作:创建Executor(执行器),将资源和任务进一步分配给Executor,然后同步资源信息给Cluster Manager。
(3)Executor:执行计算任务的一线进程。主要负责任务的执行以及与Worker、Driver App的信息同步。
(4)Driver App:客户端驱动程序,也可以理解为客户端应用程序,用于将任务程序转换为RDD(弹性分布式数据集,只读的记录分区的集合)和DAG(有向无环图,一个无环的有向图称做有向无环图),并与Cluster Manager进行通信与调度。
然后是我们的Spark作业运行流程图,如图可知:
(1)注册申请资源构建Spark Application的运行环境,启动SparkContext。
(2)SparkContext向资源管理器(可以是Standalone,Mesos,Yarn)申请运行Executor资源
(3) 资源管理器分配Executor,并启动Executor。并且Executor发送心跳给资源管理器
(4)Executor向SparkContext申请Task。
(5)SparkContext将应用程序分发给Executor。
(6)Task在Executor上运行,运行完释放所有资源。

流程
技术分享图片
技术分享图片
对照前面作业流程图, 在创建SparkContext对象的时候,要经历如下步骤,即是核心原理的内容:
(1) 从代码构建DAG图。
(2) 将DAG划分为Stage。
(3) Stage生成作业。
(4) FinalStage提交任务集。
(5) TaskSets提交任务。
(6) Tasks执行任务。
(7) Results跟踪结果。

Spark具备多种模式的运行,包括local、standalone、yarn、mesos四种运行模式。
local模式用于Spark单机运行,一般用于开发测试。
Standalone模式用于构建一个由Master+Slave构成的Spark集群,Spark将运行在集群中。
Spark on Yarn模式用于Spark客户端直接连接Yarn。
Spark on Mesos模式用于Spark客户端直接连接Mesos,前两个模式都不需要额外构建Spark集群。

PPT整理

原文:https://www.cnblogs.com/hhxxlx/p/14799251.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!