彩票网站的推荐怎么做,南京铁路建设网站,移动端是指手机吗,我网站建设1 Spark是什么
Spark是用于大规模数据处理的统一分析引擎。对任意类型的数据进行自定义计算。 可以计算#xff1a;结构化、非结构化#xff0c;半结构化的数据结构#xff0c;支持使用Python#xff0c;Java#xff0c;Scala、Sql语言开发应用程序计算数据。 计算框架结构化、非结构化半结构化的数据结构支持使用PythonJavaScala、Sql语言开发应用程序计算数据。 计算框架 Spark借鉴了MapReduce思想保留了其分布式并行计算的有点并改进了其明显的缺陷让中间数据存储在内存中提高了运行速度、并提供丰富的操作数据的API提高了开发速度。
Hadoop和Spark对比 在计算层面Spark相比较MapReduce有巨大的性能优势但至今仍有很多计算工具基于MR框架Spark仅做计算而Hadoop生态圈不仅有计算MR还有存储HDFS和资源管理调度YARN
2 Spark四大特点
速度快 处理数据时将中间结果数据存储到内存中提供非常丰富的算子API 易于使用通用性强 - 运行方式多
3 Spark框架
SparkCoreSpark的核心Spark核心功能均由SparkCore模块提供是Spark运行的基础。SparkCore以RDD为数据抽象提供Python、Java、ScalaR语言的API可以编程进行海量离线数据批处理计算。SparkSQL基于SparkCore之上提供结构化数据的处理模块。SparksQL支持以SQL语言对数据进行处理SparkSQL本身针对离线计算场景。同时基于SparkSQLSpark提供了Structuredstreaming模块可以SparkSQL为基础进行数据的流式计算。SparkStreaming 以Sparkcore为基础提供数据的流式计算功能。MLlib: 以Sparkcore为基础进行机器学习计算内置了大量的机器学习库和API算法等。方便用户以分布式计算的模式进行机器学习计算。GraphX: 以Sparkcore为基础进行图计算提供了大量的图计算API方便用于以分布式计算模式进行图计算。
4 Spark的运行模式
本地模式单机独立的进程通过其内部的多个线程来模拟整个Spark运行时环境多用于本地测试Standlone模式集群各个角色以独立进程的形式存在并组成Spark集群环境Standalone是Spark自带的一个资源调度框架支持完全分布式Hadoop YARN模式集群各个角色运行在YARN的容器内部并组成Spark集群环境Kubernetes模式容器模式各个角色运行在Kubernetes的容器内部并组成Spark集群环境云服务模式运行在云平台上
5 Spark架构角色
5.1.YARN角色回顾
YARN主要有4类角色从2个层面去看
资源管理层面 * 集群资源管理者 MasterResourceManager * 单机资源管理者 WorkerNodeManager所在服务器的资源管理任务计算层面 单任务管理者MasterApplicationMaster当前计算任务的管家单任务执行者WorkerTask容器内计算框架的工作角色
5.2.Spark运行角色
资源管理层面 * 集群资源管理者 Master * 单机资源管理者 Worker任务计算层面 单任务管理者Driver,管理单个Spark任务在运行时工作单任务执行者Executor单个任务运行时的一堆工作者
5.3 YARN和Spark对比
从2个层面划分
资源管理层面 管理者Spark是Master角色 YARN是ResourceManager 工作中Spark是Worker角色YARN是NodeManager任务执行层面 某任务管理者Spark是Driver角色YARN是ApplicationMaster 某任务执行者Spark是Executor角色YARN是容器中运行的具体工作进程