函数式编程进阶 1、函数和变量一样作为Scala语言的一等公民,函数可以直接复制给变量; 2、函数更长用的方式是匿名函数,定义的时候只需要说明输入参数的类型和函数体即可,不需要名称,但是匿名函数赋值给一个变量(其实是val常量),Spark源码中大量存在这种语法; 3、函数可以作为参数直接传递给函数 ...
分类:
其他好文 时间:
2017-09-10 15:46:19
阅读次数:
120
spark简述 sparkContext在Spark应用程序的执行过程中起着主导作用,它负责与程序和spark集群进行交互,包括申请集群资源、创建RDD、accumulators及广播变量等。sparkContext与集群资源管理器、work节点交互图如下: 官网对图下面几点说明: (1)不同的Sp ...
分类:
其他好文 时间:
2017-09-07 13:23:41
阅读次数:
260
0、操作系统 centos:6 hadoop:2.5.0-cdh5.3.6 1、为什么要编译 spark 源码? 学习spark的第一步 就应该是编译源码,后期修改和调试,扩展集成的功能模块 2、Spark 源码编译的三种形式? a.maven 编译 # export MAVEN_OPTS="-Xm ...
分类:
其他好文 时间:
2017-09-06 00:38:49
阅读次数:
232
SparkContext概述 sparkContext是所有的spark应用程序的发动机引擎,就是说你想要运行spark程序就必须创建一个,不然就没的玩了。sparkContext负责初始化很多东西,当其初始化完毕以后,才能像spark集群提交任务,这个地方还有另一个管理配置的类sparkConf, ...
分类:
其他好文 时间:
2017-09-03 11:15:23
阅读次数:
196
在运行spark源码时报错: Error:(45, 66) not found: type SparkFlumeProtocol val transactionTimeout: Int, val backOffInterval: Int) extends SparkFlumeProtocol wit ...
分类:
其他好文 时间:
2017-08-27 00:10:29
阅读次数:
844
思考:在spark的wordcount过程一共产生多少个RDD? 通过该命令(scala> rdd.toDebugString)可以查看RDD的依赖关系 (6个,除了图中的五个,rdd.saveAsTextFile也还会产生一个RDD) 接下来一步步分析(通过查看spark源码进行分析) (1) s ...
分类:
其他好文 时间:
2017-08-24 21:18:21
阅读次数:
660
要清楚,map函数的本质是?或者说map函数到底是用来干什么的?可以参考下面的例子:marathon源码,spark源码中大量使用了高阶函数map,如下面是marathon的源码
分类:
其他好文 时间:
2017-08-24 10:26:41
阅读次数:
143
特性:A、将一个变量声明为lazy,则只有第一次使用该变量时,才会进行初始化;B、赖加载特性使用场景:使用于比较耗时的计算业务;如网络IO,磁盘IO等;marathon源码,与spark源码中同样大量使用了这种特性;Java中的赖加载与scala中的赖加载的区别?1、Java中的赖加载,实例:..
分类:
其他好文 时间:
2017-08-13 15:12:08
阅读次数:
174
参考:Spark源码的编译过程详细解读(各版本)(博主推荐) ...
分类:
其他好文 时间:
2017-08-11 19:33:42
阅读次数:
183
经常在marathon源码和spark源码中看见Option[A]的身影,那它到底是用来干什么的呢?其实,Option就像是一个容器,一个箱子;Option[A]有两种结果:A、Some[A]表示容器不为空,存在A,然后就可以进行其他业务逻辑计算,如调用foreach,flatMap等B、None表示容器为空,A是不存在的
分类:
其他好文 时间:
2017-08-11 16:02:10
阅读次数:
138