Spark
文章平均质量分 90
Stray_Lambs
这个作者很懒,什么都没留下…
展开
-
为什么Spark比MapReduce快的原因
对于这个问题我先给出核心的答案,后面会进一步的扩展,有兴趣的可以去了解一下扩展内容。核心答案1、基于内存学过Spark的应该都知道,Spark是基于内存进行数据处理操作的,而MapReduce则是基于磁盘进行数据处理。MR的设计:将MapTask的输出作为中间结果,保存到文件当中,随后作为ReduceTask的输入。这样可以提高可靠性,减少了内存的占用,但是牺牲了性能。Spark的设计:数据在内存当中进行交换(注意是交换,也就是转换算子的操作),但是内存可靠性不如磁盘,所以性能方面比MR原创 2021-07-02 16:16:39 · 1239 阅读 · 0 评论 -
SparkSQL入门介绍
Spark SQL概述 Spark SQL是Spark用于结构化数据(structured data)处理的Spark模块。与基本的Spark RDD API不同,Spark SQL的抽象数据类型为Spark提供了关于数据结构和正在执行的计算的更多信息。在内部,Spark SQL使用这些额外的信息去做一些额外的优化,有多种方式与Spark SQL进行交互,比如: SQL和DatasetAPI。当计算结果的时候,使用的是相同的执行引擎,不依赖你正在使用哪种API或者语言。这种统...原创 2021-06-18 14:03:33 · 258 阅读 · 0 评论 -
Spark-core性能优化——shuffle调优
shuffle调优调优概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO、序列化、网络数据传输等操作。因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优。但是也必须提醒大家的是,影响一个Spark作业性能的因素,主要还是代码开发、资源参数以及数据倾斜,shuffle调优只能在整个Spark的性能调优中占到一小部分而已。因此大家务必把握住调优的基本原则,千万不要舍本逐末。下面我们就给大家详细讲解shuffle的原理,以及相关...转载 2021-06-17 15:02:01 · 564 阅读 · 0 评论 -
Spark-core性能优化——数据倾斜调优
数据倾斜调优调优概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。数据倾斜发生时的现象 1、绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却要一两个小时。这种情况很常见。 2、原本能够正常执行的Spark作业,某天突然报出O...转载 2021-06-17 14:27:20 · 192 阅读 · 0 评论 -
Spark-core性能优化——资源调优
资源调优 在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常。总之,无论是哪种情况,都会导致Spark作业的运行效率低下,甚至根本无法运行。因此我们必须对Spar...转载 2021-06-16 16:59:25 · 287 阅读 · 0 评论 -
Spark-core性能优化——开发调优
Spark-core部分源码讲解总结环境准备源码(Yarn集群)Driver & Executor转载 2021-06-15 18:52:51 · 459 阅读 · 0 评论 -
Spark核心编程系列(六)——共享变量
累加器实现原理 累加器用来把Executor端变量信息聚合到Driver端。再Driver程序中定义的bian'linag原创 2021-06-13 20:50:16 · 620 阅读 · 2 评论 -
Spark核心编程系列(五)——RDD文件读取与保存
RDD文件读取与保存 Spark的数据读取及数据保存可以从两个维度来作区分:文件格式以及文件系统。原创 2021-06-09 14:52:15 · 1115 阅读 · 0 评论 -
Spark核心编程系列(四)——RDD持久化
RDD持久化1、RDD Cache缓存原创 2021-06-08 17:57:02 · 433 阅读 · 0 评论 -
Spark核心编程系列(三)——RDD行动算子、序列化以及依赖关系
RDD行动算子1)reduce函数签名def reduce(f:(T,T)=>T):T函数说明原创 2021-06-08 11:35:50 · 675 阅读 · 0 评论 -
Spark核心编程系列(二)——RDD转换算子
RDD算子介绍 Spark算子大致可以分为两类:Transformation 变换/转换算子:这种变换并不触发提交作业,完成作业中间过程处理。 Action 行动算子:这类算子会触发 SparkContext 提交 Job 作业。 Transformation 操作是延迟计算的,也就是说从一个RDD 转换生成另一个 RDD 的转换操作不是马上执行,需要等到有 Action 操作的时候才会真正触发运算。而Action 算子会触发 Spark 提交作业(Job),并将数据输出 Sp...原创 2021-06-07 14:22:16 · 802 阅读 · 1 评论 -
Spark核心编程系列(一)——RDD详解
Spark核心编程系列——RDD详解(一)RDD概念原创 2021-06-03 15:54:33 · 1245 阅读 · 1 评论 -
Spark框架简单介绍
Spark运行架构Spark运行架构Spark框架的核心是一个计算引擎,整体来说,它cai原创 2021-06-02 15:23:39 · 1298 阅读 · 4 评论