![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spark学习
灿烂拿到
这个作者很懒,什么都没留下…
展开
-
spark架构总结
spark架构可分为:driver(进程),executor(进程),task(进程) 1. driver(进程) 主要功能:初始化操作,发送请求给集群master,注册spark应用程序。master在接受spark应用程序注册申请后,发送请求给worker,进行资源(executor)调度和分配。driver运行在提交spark任务的机器上。执行action之前transformation和原创 2017-04-22 14:29:33 · 298 阅读 · 0 评论 -
两种yarn集群提交方式
yarn yarn是一种新的hadoop资源管理器,包括 一个全局的资源管理器ResourceManager,ResourceManager的每个节点代理NodeManager, 每个应用的APplicationMaster, 每个ApplicationMaster拥有多个Container在NodeManager上运行yarn-client提交模式 一般用于测试,在本地启动driver原创 2017-06-15 14:15:02 · 979 阅读 · 0 评论 -
spark架构原理(一)
spark内核架构由一下几部分组成 1、Application 自己的spark程序2、spark-submit 提交任务, standalone模式下会创建一个DriverActor进程3、Driver(进程) 执行application程序,初始化sparkcontext,4、SparkContext 构造DAGschedule和TaskSchedule8、Job 每执行一个acti原创 2017-06-15 10:45:55 · 1137 阅读 · 0 评论 -
RDD的持久化
为什么要持久化 action操作时,触发之前的transform算子,action执行完,只保留了最后的结果,之前的RDD会被丢掉,如果后面又要进行action操作,则需要从最初的RDD重新计算。rdd持久化后,只在第一次计算时,进行计算,之后再使用该RDD直接读取缓存,无需计算。持久化方式 persist()或cache(),二者的区别是,cache() 方法其实调用的就是persist()原创 2017-06-14 18:17:11 · 329 阅读 · 0 评论 -
spark性能调优
Spark的性能优化,主要手段包括: 1、使用高性能序列化类库(kyro序列化,自定义类需注册) 2、优化数据结构(优先使用数组和字符串,而不是集合类,也就是使用array,少使用ArrayList, HashMap, LinkedList;使用原始数据类型int等,避免使用多层嵌套对象,可用json串代替) 3、对多次使用的RDD进行持久化 / Checkpoint 4、使用序列化的持久化原创 2017-06-20 20:14:03 · 225 阅读 · 0 评论 -
spark存储,缓存,断点模块
一. blockManager 1. driver上有BlockmanagerMaster, 负责维护各个节点上blockManager的元数据,比如block增删改等操作。 driver->DAGScheduler->blockManagerMaster->blockManagerInfo->blockStatus blockManager创建后,先向blockManagerMaster进行原创 2017-06-20 10:34:51 · 291 阅读 · 0 评论 -
saprk 核心组件总结
DAGScheduler的stage划分算法 执行action时,会通过sparkContext的runJob()触发job(DAGScheduler),从触发action的那个rdd开始,首先为最后一个rdd创建一个stage,然后向前推,如果发现某个RDD是款依赖,那么将宽依赖的那个RDD穿件一个新的stage,那个rdd就是新的stage的最后一个rdd。以此类推。DAGScheduler原创 2017-06-19 15:46:03 · 329 阅读 · 0 评论 -
Work深度剖析
Master要求worker启动Driver和Executor worker启动driver原理是,worker内部会启动一个线程-driverRunner,driverRunner负责启动driver进程并管理driver进程。 worker启动executor原理是,worker内部启动一个线程-executorRunner,executorRunner负责启动executor并对execu原创 2017-06-18 10:53:59 · 272 阅读 · 0 评论 -
Master深度剖析
一. Master注册机制 driver启动后,执行application代码,sparkcontext初始化时,底层的sparkdeployschedulerbackend,通过appclient的内部现场clientactor发送registerapplication到Master注册application 将application,driver,最新的可用的worker信息分别加入相应缓存原创 2017-06-15 20:16:07 · 430 阅读 · 0 评论 -
spark常用的transformation
spark支持两种RDD操作,transformation操作对当前的RDD进行转换形成新的RDD;action是指对RDD的最后操作,返回结果给driver。 transformation是lazy的,即只有action操作时,才执行transformation,也就是说如果程序中只有transformation操作,即使运行程序,该程序也不会执行。这样做的目的是优化执行过程,避免产生过多中间结原创 2017-04-22 15:11:30 · 334 阅读 · 0 评论