摘要:
应用程序的执行 1. 概述 Driver线程主要是初始化SparkContext对象,准备运行所需的上下文,然后一方面保持与ApplicationMaster的RPC连接,通过ApplicationMaster申请资源,另一方面根据用户业务逻辑开始调度任务,将任务下发到已有的空闲Executor上 阅读全文
posted @ 2022-12-11 18:37
黄一洋
阅读(19)
评论(0)
推荐(0)
摘要:
Shuffle Shuffle过程中,会等待上游不同分区数据执行完成再进行下一步操作,但是肯定不能在内存中等待,因为数据会大量堆积,所以一定会进行落盘操作!所以提高效率的办法:1)减少落盘的数据量(预聚合)。2)减少落盘的次数 而写磁盘和读磁盘又对应shuffle write和shuffle rea 阅读全文
posted @ 2022-12-11 18:36
黄一洋
阅读(14)
评论(0)
推荐(0)
摘要:
组件通信 使用Socket进行通信性能是很低的,因为它有阻塞的概念 Netty:通信框架,支持 AIO(异步通信) 三种IO通信方式 BIO:阻塞式IO;比如吃面时,只能坐在桌子边等,不能做别的事 NIO:非阻塞式IO;比如吃面时,可以去干别的,然后时不时回来看看面好没 AIO:异步非阻塞式IO;比 阅读全文
posted @ 2022-12-11 18:35
黄一洋
阅读(7)
评论(0)
推荐(0)
摘要:
源码阅读目录 1)环境准备(Yarn集群) Driver, Executor 2)组件通信 Driver => Executor Executor => Driver Executor => Executor 3)应用程序的执行 RDD依赖 阶段的划分 任务的切分 任务的调度 任务的执行 4)Shu 阅读全文
posted @ 2022-12-11 18:35
黄一洋
阅读(44)
评论(0)
推荐(0)

浙公网安备 33010602011771号