随笔分类 -  SparkCore

摘要:1 阅读全文
posted @ 2022-08-23 19:29 学而不思则罔! 阅读(11) 评论(0) 推荐(0) 编辑
摘要:1 阅读全文
posted @ 2022-08-23 19:25 学而不思则罔! 阅读(10) 评论(0) 推荐(0) 编辑
摘要:1. 使用说明 /* * TODO 使用说明 * 在大表 关联 小表时,可以将小表读取到本地内存(Driver),再作为一个只读变量发分到Executor端读取, * 这样操作避免了shuffle操作,大大提高了join效率 * * */ 2.广播变量实现 join /* 广播变量实现 join * 阅读全文
posted @ 2022-06-20 19:40 学而不思则罔! 阅读(106) 评论(0) 推荐(0) 编辑
摘要:/* * TODO 关于 SparkConf 的作用 * 1. spark的配置对象 用来初始化 Spark application 的配置信息 * 2. 用 SparkConf.set("key","value") 的方式来注入配置信息 * 3. 用 SparkConf对象 指定的配置信息,优先级 阅读全文
posted @ 2022-06-06 13:04 学而不思则罔! 阅读(74) 评论(0) 推荐(0) 编辑
摘要:1. 什么是累加器 累加器是用来把Executor端的变量信息聚合到Driver端 2. 累加器实现原理 * 在Driver程序中定义的变量,在Executor端的每个Task节点上都会复制这个变量的副本 * ,每个Task节点更新这些副本的值后,再传回Driver端进行merge 3. 怎样获取累 阅读全文
posted @ 2022-04-05 16:14 学而不思则罔! 阅读(147) 评论(0) 推荐(0) 编辑
摘要:1.说明 * 1.Rdd文件读取和保存 可以从两个角度来区分 * 文件格式 : text、json、csv、sequence文件、Object序列化文件 * 文件系统 : 本地文件系统、hdfs、hbase、各类型数据库 2.Spark中怎样读取&保存text文件? 1.读取 * 1.SparkCo 阅读全文
posted @ 2022-04-03 08:10 学而不思则罔! 阅读(307) 评论(0) 推荐(0) 编辑
摘要:1. 什么是Rdd的分区器? * key-value类型的Rdd在Shuffle时,会根据key的特质进行分区 * 分区器就是 Partitioner的一个实现类 * 通过指定 numPartitions 确定分区个数 * getPartition(key: Any) 确定分区规则 2. Spark 阅读全文
posted @ 2022-04-02 18:07 学而不思则罔! 阅读(63) 评论(0) 推荐(0) 编辑
摘要:1.什么是Rdd持久化? Rdd只会存储的元数据信息(切片的位置信息、Rdd的依赖关系、计算逻辑等),不会存储计算数据 Rdd可以通过Cache或者Persis或者CheckPoint方法,将前面Rdd的计算的结果缓存,默认会将数据存储到JVM的堆内存中 2.怎样将Rdd的计算结果持久化? 1.Ca 阅读全文
posted @ 2022-04-02 16:47 学而不思则罔! 阅读(106) 评论(0) 推荐(0) 编辑
摘要:1.说明 /* * RDD 任务切分中间分为:Application、Job、Stage 和 Task Application:初始化一个SparkContext即生成一个Application; new SparkConf().setMaster("local").setAppName("dist 阅读全文
posted @ 2022-04-02 07:12 学而不思则罔! 阅读(120) 评论(0) 推荐(0) 编辑
摘要:1. RDD 血缘关系 /*RDD 血缘关系*/ /* * 1. 什么是Rdd的血缘关系? * 1.RDD 只支持粗粒度转换,即在大量记录上执行的单个操作。 * 2.将创建 RDD 的一系列 Lineage (血统)记录下来,以便恢复丢失的分区。 * 3.RDD的 Lineage 会记录RDD的 元 阅读全文
posted @ 2022-04-01 12:22 学而不思则罔! 阅读(206) 评论(0) 推荐(0) 编辑
摘要:1. 说明 /*闭包检查*/ /* * 1. Scala的闭包 * 如果一个函数,访问了它外部的(局部)变量的值,那么这个函数和所处的环境,称之为闭包 * 使用场景 : * 在嵌套函数中,内层函数可以 只用外层函数的任意变量 * * 2. Spark的闭包 * 1. 算子之外的代码都是在Driver 阅读全文
posted @ 2022-04-01 07:38 学而不思则罔! 阅读(105) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def foreach(f: T => Unit): Unit * 2.功能 * 分布式遍历 RDD 中的每一个元素,调用指定函数 * note : 在每个分区节点上,执行指定函数f * */ 2.示例 object foreachTest extends App 阅读全文
posted @ 2022-03-27 17:56 学而不思则罔! 阅读(39) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def saveAsTextFile(path: String): Unit * def saveAsObjectFile(path: String): Unit * def saveAsSequenceFile( * path: String, * codec: 阅读全文
posted @ 2022-03-27 17:50 学而不思则罔! 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def countByKey(): Map[K, Long] * 2.功能 * 统计每种 key 的个数 * 3.执行流程 * 1. 每个节点统计分区key,count(1) * 2. 拉取每个分区 key,count(1),再做聚合 * * */ 2.示例 obj 阅读全文
posted @ 2022-03-27 17:43 学而不思则罔! 阅读(43) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def fold(zeroValue: T)(op: (T, T) => T): T * op : 分区内、分区间聚合函数 * 2.功能 * 分区的数据通过初始值和分区内的数据进行聚合,然后再和初始值进行分区间的数据聚合 * 3.执行流程 * 1. 分区内对元素聚合 阅读全文
posted @ 2022-03-27 17:38 学而不思则罔! 阅读(34) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def aggregate[U: ClassTag](zeroValue: U)(seqOp: (U, T) => U, combOp: (U, U) => U): U * seqOp : 分区内聚合函数 * combOp : 分区间聚合函数 * 2.功能 * 分区 阅读全文
posted @ 2022-03-27 17:35 学而不思则罔! 阅读(36) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def takeOrdered(num: Int)(implicit ord: Ordering[T]): Array[T] * 2.功能 * 返回该 RDD 排序后的前 n 个元素组成的数组 * 3.note * 1.默认为正序排序 * 逆序排序: Orderin 阅读全文
posted @ 2022-03-27 17:26 学而不思则罔! 阅读(108) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def take(num: Int): Array[T] * 2.功能 * 返回一个由 RDD 的前 n 个元素组成的数组 * * */ 2.示例 object takeTest extends App { val sparkconf: SparkConf = ne 阅读全文
posted @ 2022-03-27 17:20 学而不思则罔! 阅读(38) 评论(0) 推荐(0) 编辑
摘要:1.定义 /* * 1.定义 * def first(): T * 2.功能 * 返回 RDD 中的第一个元素 * * */ 2.示例 object firstTest extends App { val sparkconf: SparkConf = new SparkConf().setMaste 阅读全文
posted @ 2022-03-27 17:17 学而不思则罔! 阅读(45) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示