一个Executor对应一个JVM进程。 从Spark的角度看,Executor占用的内存分为两部分:ExecutorMemory和MemoryOverhead。其中,ExecutorMemory为JVM进程的Java堆…
分类:Spark
漫谈加持Blink的Flink和Spark
前言 今天朋友圈有篇【阿里技术】发的文章,说Blink的性能如何强悍,功能现在也已经比较完善。譬如: Blink 在 TPC-DS 上和 Spark 相比有着非常明显的性能优势,而且这种性能优势随着数据量的增加而变得越来…
(十四)Spark on Yarn的基本使用及常见错误
将spark作业提交到yarn上执行 spark仅仅作为一个客户端 ./spark-submit \ --class org.apache.spark.examples.SparkPi \ --master yarn \…
[spark] 调度模式(FIFO&FAIR)
前言 spark应用程序的调度体现在两个地方,第一个是Yarn对spark应用间的调度,第二个是spark应用内(同一个SparkContext)的多个TaskSetManager的调度,这里暂时只对应用内部调度进行分析…
使用SBT编译Spark子项目
前言 最近为了解决Spark2.1的Bug,对Spark的源码做了不少修改,需要对修改的代码做编译测试,如果编译整个Spark项目快的话,也得半小时左右,所以基本上是改了哪个子项目就单独对那个项目编译打包。 Spark官…
SparkListener一些常用的监听使用方式
概述 spark 提供了一系列整个任务生命周期中各个阶段变化的事件监听机制 通过这一机制可以在任务的各个阶段做一些自定义的各种动作 SparkListener便是这些阶段的事件监听接口类 通过实现这个类中的各种方法便可实…
Spark 数据倾斜调优
1.使用Hive ETL预处理数据 方案适用场景:如果导致数据倾斜的是Hive表。如果该Hive表中的数据本身很不均匀(比如某个 key对应了100万数据,其他key才对应了10条数据),而且业务场景需要频繁使用Spar…
利用 Spark DataSource API 实现Rest数据源
Spark DataSource API 的提出使得各个数据源按规范实现适配,那么就可以高效的利用Spark 的计算能力。典型如Parquet,CarbonData,Postgrep(JDBC类的都OK)等实现。本文则介…
Spark Sort Based Shuffle内存分析
分布式系统里的Shuffle 阶段往往是非常复杂的,而且分支条件也多,我只能按着我关注的线去描述。肯定会有不少谬误之处,我会根据自己理解的深入,不断更新这篇文章。 前言 借用和董神的一段对话说下背景: shuffle共有…
spark算子1:repartitionAndSortWithinPartitions
repartitionAndSortWithinPartitions算是一个高效的算子,是因为它要比使用repartition And sortByKey 效率高,这是由于它的排序是在shuffle过程中进行,一边shu…
[第一章] spark内核原理
####蔚蓝天空#### 当我们编写好自己的应用application后,打JAR包,放入一个spark集群节点上执行:spark-submit…等角本来执行application时,(其实我们之前的提交模式…
Spark强大的函数扩展功能
在数据分析领域中,没有人能预见所有的数据运算,以至于将它们都内置好,一切准备完好,用户只需要考虑用,万事大吉。扩展性是一个平台的生存之本,一个封闭的平台如何能够拥抱变化?在对数据进行分析时,无论是算法也好,分析逻辑也罢,…