随笔分类 -  Spark

摘要:RDD是Spark对各类数据计算模型的统一抽象,被用于迭代计算过程以及任务输出结果的缓存读写。 在所有MapReduce框架中,shuffle是连接map任务和reduce任务的桥梁。shuffle性能优劣直接决定了 整个计算引擎的性能和吞吐量。 6.1 迭代计算 MappedRDD的iterato 阅读全文
posted @ 2019-02-19 17:54 Mars、少年 阅读(372) 评论(0) 推荐(0)
摘要:即欲捭之贵周,即欲阖之贵密。周密之贵,微而与道相随。 《鬼谷子》 解释:译文:如果要分析问题,关键在于周详,如果要综合归纳问题,关键在于严密。周详严密的关键在于精深而与道相随。 解词:捭阖(bǎihé):开合。意为运用某些计策和手段,使双方联合或分化。含此义的成语有“纵横捭阖”。 解析:《鬼谷子》是 阅读全文
posted @ 2019-02-12 17:55 Mars、少年 阅读(303) 评论(0) 推荐(0)
摘要:天行健,君子以自强不息;地势坤,君子以厚德载物。——《易经》 本章导读 Spark的初始化阶段、任务提交阶段、执行阶段,始终离不开存储体系。 Spark为了避免Hadoop读写磁盘的I/O操作成为性能瓶颈,优先将配置信息、计算结果等数据存入内存,极大的提升了系统的执行效率。 4.1 存储体系的概述 阅读全文
posted @ 2019-01-25 19:07 Mars、少年 阅读(478) 评论(0) 推荐(0)
摘要:3.1 SparkContext概述 SparkConf负责配置参数,主要通过ConcurrentHaspMap来维护各种Spark的配置属性。 读取“spark.”开头的配置文件。 接下来对于Sparkconfi的赋值,各项配置信息的校验。 3.2 创建执行环境SparkEnv 创建SparkEn 阅读全文
posted @ 2018-12-24 17:28 Mars、少年 阅读(464) 评论(0) 推荐(0)
摘要:若夫乘天地之正,而御六气之辩解,以游无穷者,彼且恶乎待哉? ——《庄子.逍遥游》 翻译:至于遵循宇宙万物的规律,把握“六气”的变化,遨游于无穷无尽的境域,他还仰赖什么呢! 2.1 初始Spark 第一点是关于MRv1与MRv2的区别对比。 2.2 Spark基础知识 主要解释Spark的各个版本,介 阅读全文
posted @ 2018-12-24 14:43 Mars、少年 阅读(267) 评论(0) 推荐(0)
摘要:《深入理解Spark 核心思想与源码分析》 耿嘉安著 本书共计486页,计划每天读书20页,计划25天完成。 2018-12-20 1-20页 凡事豫则立,不豫则废;言前定,则不跲;事前定,则不困。 ——《礼记.中庸》 第一章: 1、运行环境,安装JDK。 2、运行环境,安装scala。 wget 阅读全文
posted @ 2018-12-21 13:16 Mars、少年 阅读(274) 评论(0) 推荐(0)
摘要:Spark中的源码的提取器和注解 @SparkContext.scala @ volatile 线程专用 保证线程间共享内容的一致性 @ DeveloperApi 表示开发者使用的API @SQLContext.scala @Experimental试验性方法,不建议使用 @transient瞬时状 阅读全文
posted @ 2018-11-22 15:31 Mars、少年 阅读(340) 评论(0) 推荐(0)
摘要:1.SparkSession.scala 2.SparkContext.scala 3.SQLContext.scala 阅读全文
posted @ 2018-11-22 15:22 Mars、少年 阅读(238) 评论(0) 推荐(0)
摘要:本篇文章主要讲述Scala函数式编程之偏函数,异常,及Lazy 第一部分:偏函数 偏函数:当函数有多个参数,而在使用该函数时不想提供所有参数(比如函数有3个参数),只提供0~2个参数,此时得到的函数便是偏函数。 被lazy修饰的只有在被调用的时候才会实例化 阅读全文
posted @ 2018-11-22 11:37 Mars、少年 阅读(219) 评论(0) 推荐(0)
摘要:package com.wanji.scala.test import javax.swing.text.AbstractDocument.Content import scala.actors.Actor case class Hello(name:String,content:String,send:Actor) case class HelloBack(name:String,con... 阅读全文
posted @ 2018-11-22 10:19 Mars、少年 阅读(252) 评论(0) 推荐(0)
摘要:隐式转换:当某个类没有具体的方法时,可以在该类的伴生对象或上下文中查找是否存在隐式转换,将其转换为可以调用该方法的类,通过代码简单的描述下 一:隐式转换 1、定义类Man class Man(val name: String) 2、定义类SuperMan,并在类中定义一个方法 class SuperMan(val name: String) { def makeMiracles = pr... 阅读全文
posted @ 2018-11-21 19:31 Mars、少年 阅读(245) 评论(0) 推荐(0)
摘要:1、Scala的类和方法、函数都可以是泛型 2、上界:表示泛型的类型必须是某种类型或者其类型的子类,语法:<: ,对类型进行限定 3、下界:表示泛型的类型必须是某种类型或者其类型的父类,语法:>: 4、View Bounds,可以进行隐式转换,将其转换成目标类型,是上边界和下边界的加强版, 语法 T 阅读全文
posted @ 2018-11-21 19:25 Mars、少年 阅读(159) 评论(0) 推荐(0)
摘要:package com.dt.spark.scala.bascis object Functional_Itearal { def main(args: Array[String]): Unit = { val range = 1 to 10 val list = List(1,2,3,4,5) println(list.head) println... 阅读全文
posted @ 2018-11-21 18:14 Mars、少年 阅读(168) 评论(0) 推荐(0)
摘要:package com.dt.spark.scala.bascis class Dataframework case class Computerframework (name:String,popular:Boolean) extends Dataframework case class Storgeframework (name:String,popular:Boolean) ext... 阅读全文
posted @ 2018-11-21 18:07 Mars、少年 阅读(182) 评论(0) 推荐(0)
摘要:/** * 函数式编程进阶: * 1、函数和变量一样作为Scala语言的一等公民,函数可以直接赋值给变量 * 2、函数更常用的方式是匿名函数,定义的时候只需要说明输入参数的类型和函数体即可,不需要名称, * 一般会把它赋值给变量,在Spark源码中大量存在 * 3、函数可以作为参数直接传递给函数,极 阅读全文
posted @ 2018-11-21 10:10 Mars、少年 阅读(167) 评论(0) 推荐(0)
摘要:第一点: scala的接口trait中所有方法可以都被实现!! 这种情况一般会是一种工具方法的集合,例如接口 Logging! scala 多种继承用extends ... with .... 在老师讲解的1.6.X版本中Spark继承采用的是class SparkContext(config:Sp 阅读全文
posted @ 2018-11-20 19:29 Mars、少年 阅读(240) 评论(0) 推荐(0)
摘要:isInstanceOf 和 asInstanceOf is用于判断 as用于转换,把父类类型转换成子类类型 getClass 具体找出类型 阅读全文
posted @ 2018-11-20 18:39 Mars、少年 阅读(152) 评论(0) 推荐(0)
摘要:scala类和对象 RDD中创建_sc和deps相比java更加的简洁。 在Spark的例如SparkContext、sqlSpark等全局成员在完成实例化。 在唯一实例的时候一般不会去使用伴生对象apply方法。 伴生类和伴生对象必须写在同一个文件之中。 阅读全文
posted @ 2018-11-20 17:13 Mars、少年 阅读(164) 评论(0) 推荐(0)
摘要:本课内容1.Map和Tuple在Spark源码中的鉴赏2.Map和Tuple代码操作实战 /** * Scala中最常见的两种数据结构:Map 和 Tuple * * Map初步感受就是key,value方式,key即是值的索引,排列非常规按照Hash的方式, * 不是说插入了3个元素后第4个就在第 阅读全文
posted @ 2018-11-20 13:52 Mars、少年 阅读(287) 评论(0) 推荐(0)
摘要:/** * 如果有这些语法的支持,我们说这门语言是支持面向对象的语言 * 其实真正面向对象的精髓是不是封装、继承、多态呢? * >肯定不是,封装、继承、多态,只不过是支撑面向对象的 * 一些语言级别的语法和功能,真正的面向对象其实有三个核心特征: * 第一:对象不用关心消息从哪里来,也不关心消息到哪 阅读全文
posted @ 2018-11-20 13:28 Mars、少年 阅读(123) 评论(0) 推荐(0)