
spark
文章平均质量分 71
雷恩Layne
大家好,我是雷恩,雷恩的雷,雷恩的恩!
展开
-
关于Spark默认并行度spark.default.parallelism的理解
spark.default.parallelism是指RDD任务的默认并行度,Spark中所谓的并行度是指RDD中的分区数,即RDD中的Task数。当初始RDD没有设置分区数(numPartitions或numSlice)时,则分区数采用spark.default.parallelism的取值。Spark作业并行度的设置代码如下:val conf = new SparkConf() .set("spark.default.parallelism", "500")对于reduceByKey和jo原创 2021-08-04 19:47:40 · 15304 阅读 · 0 评论 -
从源码角度分区Yarn Cluster任务提交流程
Yarn Cluster任务提交分为三个部分:用户编写好的Spark应用程序提交到Yarn上(截止到ApplicationMaster启动Driver那一步)Driver对用户的应用程序进行App->Job->Stage->Task划分Driver分发Task到Executor上首先,我将从源码部分一步一步解释上面的具体实现。然后,把对上面三部分进行转化为文字描述,方便面试时回答。需要注意的是,跟踪源码的时候添加一下依赖:<dependency> &l原创 2021-08-02 19:21:58 · 476 阅读 · 0 评论 -
【已解决】Exception in thread “main“ java.lang.InternalError: Malformed class name
java.lang.InternalError: Malformed class name解决方法最近在写Spark程序时,出现如下错误:Exception in thread "main" java.lang.InternalError: Malformed class name at java.lang.Class.getSimpleName(Class.java:1330) at org.apache.spark.sql.execution.aggregate.ScalaUDAF.toStri原创 2021-07-22 19:37:38 · 2059 阅读 · 0 评论