摘要: 1. Spark的RDD RDD(Resilient Distributed Datasets),弹性分布式数据集,是对分布式数据集的一种抽象。 RDD所具备5个主要特性: 一组分区列表 计算每一个数据分片的函数 RDD上的一组依赖 对于Key Value 对的RDD,会有一个Partitioner 阅读全文
posted @ 2018-06-21 19:08 大葱拌豆腐 阅读(421) 评论(0) 推荐(0)
摘要: 类和类型 List<String>和List<Int>类型是不一样的,但是jvm运行时会采用泛型擦除。导致List<String>和List<Int>都是Class<List>.为了得到正确的类型,需要通过反射。 泛型擦除 Java中的泛型基本上都是在编译器这个层次来实现的。在生成的Java字节码中 阅读全文
posted @ 2018-06-21 14:20 大葱拌豆腐 阅读(276) 评论(0) 推荐(0)
摘要: 1. 前言 在前面的博客中讨论了Executor, Driver之间如何汇报Executor生成的Shuffle的数据文件,以及Executor获取到Shuffle的数据文件的分布,那么Executor是如何获取到Shuffle的数据文件进行Action的算子的计算呢? 在ResultTask中,E 阅读全文
posted @ 2018-06-21 12:41 大葱拌豆腐 阅读(678) 评论(0) 推荐(0)
摘要: 1. 前言 在博客里介绍了ShuffleWrite关于shuffleMapTask如何运行,输出Shuffle结果到Shuffle_shuffleId_mapId_0.data数据文件中,每个executor需要向Driver汇报当前节点的Shuffle结果状态,Driver保存结果信息进行下个Ta 阅读全文
posted @ 2018-06-21 11:56 大葱拌豆腐 阅读(1288) 评论(0) 推荐(0)
摘要: 转载自:https://blog.csdn.net/raintungli/article/details/70807376 当Executor进行reduce运算的时候,生成运算结果的临时Shuffle数据,并保存在磁盘中,被最后的Action算子调用,而这个阶段就是在ShuffleMapTask里 阅读全文
posted @ 2018-06-21 11:24 大葱拌豆腐 阅读(664) 评论(0) 推荐(0)
摘要: 在Spark中,一个应用程序要想被执行,肯定要经过以下的步骤: 从这个路线得知,最终一个job是依赖于分布在集群不同节点中的task,通过并行或者并发的运行来完成真正的工作。由此可见,一个个的分布式的task才是Spark的真正执行者。下面先来张task运行框架整体的对Spark的task运行有个大 阅读全文
posted @ 2018-06-21 10:48 大葱拌豆腐 阅读(2567) 评论(0) 推荐(1)