(1)血缘关系:
通过血缘关系,可以知道一个RDD是如何从父RDD计算过来的
A =map=> B =filter=> C
(2)窄依赖:一个父RDD的partition最多被子RDD中的partition使用一次(一父对应一子),窄依赖无shuffle
(3)宽依赖:
父RDD中的一个partition会被子RDD中的partition使用多次(一父多子)
宽依赖有shuffle,一个shuffle会拆成一个stage,2个shuffle拆成3个stage
以wordcount为例(reduceBykey是宽依赖,把stage拆为2个stage;stage序号从0开始,每个stage最后一个操作的名字作为整个stage的名字 ):
sc.textFile("/in/1.txt").flatMap(_.split("\t")).map((_,1)).reduceByKey(_+_).collect
分析:
wordcount例子里,reduceByKey相当于把相同的key分到一个partition上去,然后在partition上做加和,
因为并不是同一个相同key都在一个partition里,可能在不同机器上,所以需要有shuffle过程,reduceByKey在shuffle前本地会做一个预聚合
(4)会引起shuffle的操作
(5)spark中的join是宽依赖还是窄依赖?
co-partitioned 是窄依赖,其他是宽依赖
相关推荐
这是每个学习spark必备的jar包,是根据我的个人试验后所得,官网正版,在spark官网下载。 资源包里不仅有需要的jar包,并且给不会再官网上下载的新手官方网址,可以自由下载资源
spark-3.2.1-bin-hadoop3.2-scala2.13.tgz
spark-core_2.11-1.6.0.jar spark-core_2.11-1.6.0.jar
spakr streaming的kafka依赖
spark-streaming的flume依赖
spark-2.1.1-Java测试最小依赖包,很多博客都写过,但是很多博客都没有经过验证,本依赖包是经过代码严格检测的,能够通过最简单的hbase数据写入,数据读取等操作的,请放心下载
xgboost4j-spark-0.7-jar-with-dependencies.jar , xgboost在spark上运行的依赖包
spark+cdh+hadoop,在用CDH开发过程中,可能会出现缺少依赖包的情况,这个包可能会有用!
KafkaUtils所依赖的jar包,导入文件中KafkaUtils报错,需要导入spark-streaming-kafka_2.10-1.6.0.jar包
解决Spark升级到2.1后测试streaming-kafkaIDEA报java.lang.NoClassDefFoundError: org/apache/spark/Logging错误,将这个jar包放到spark的lib目录中,将这个jar包导进IDEA中的依赖,文档中除资源地址外,还有详细图解...
这个依赖包解决了在Arm 服务器由于page 为64K 不同于x86的4,导致SparkRDMA在arm 服务器上的不可用的情况
spark和hive结合依赖,如何使用请看我博客https://blog.csdn.net/z1987865446/article/details/109372818
spark官方版本的driver-class-path不支持hdfs路径,只支持本地路径。本资源解决了这个问题,driver-class-path在cluster模式时可以支持hdfs路径,解决了cluster模式driver有大量jar依赖的问题。
20190620自学spark,实现用java调用spark rdd api,主要侧重于lambda方式调用,本源码下载后直接可运行,因使用maven,只用前需先安装maven并保持网络正常。初次使用比较耗时,需要下载依赖包
spark和hive结合依赖,如何使用请看我博客https://blog.csdn.net/z1987865446/article/details/109372818
java运行依赖jar包
RDD和它依赖的父RDD(s)的关系有两种不同的类型,即窄依赖(narrow dependency)和宽依赖(wide dependency)。 窄依赖: 窄依赖指的是每一个父RDD的Partition最多被子RDD的一个Partition使用 总结:窄依赖我们...
Jaeger Spark依赖项 这是一个Spark作业,它从存储中收集跨度,分析服务之间的链接,并将其存储以供以后在UI中呈现。 请注意,生产部署需要它。 all-in-one分发不需要这项工作。 此作业根据UTC解析给定日期的所有...
HADOOP SPARK 开发依赖包,对于第一个SPARK开发的例子,可以导入这个包去进行开发
快速测试 一个快速的Apache Spark测试帮助程序库,其中包含格式精美的错误消息! 与 , 和。 将用于PySpark应用程序。 阅读以获得关于测试Spark代码的最佳方法的完整说明! 好的测试套件可以产生易于重构的更高质量...