Spark源码的角度思考Scala中的模式匹配

学习了从Spark源码的角度思考Scala中的模式匹配,如case class应用,伴生对象中用apply,所以没有new class,直接进行模式匹配,例子如下

Case class RegisterWorker(

Id: string,

Host: string,

Port: int,

Cores:int,

Memory:int,

webUiPort:int,

publicAddress:string,

Extend DeployMessage{

Utils.checkHost(host,”Required hostname”)

Assert(port>0)

}

王家林亲授《DT大数据梦工厂》大数据实战视频“Scala深入浅出实战经典”视频、音频和PPT下载!第74讲:从Spark源码的角度思考Scala中的模式匹配
百度云:http://pan.baidu.com/s/1hqJByvU
腾讯微云:http://url.cn/chV3CI
360云盘:http://yunpan.cn/cdgz9G35mtADm  访问密码 f551

时间: 2024-10-17 20:48:17

Spark源码的角度思考Scala中的模式匹配的相关文章

第74讲:从Spark源码的角度思考Scala中的模式匹配

今天跟随王老师学习了从源码角度去分析scala中的模式匹配的功能.让我们看看源码中的这一段模式匹配: 从代码中我们可以看到,case RegisterWorker(id,workerHost,........){}这里为模式匹配,而我们的模式匹配类RegisterWorker之前就已定义好,如下图: 我们可以看到,我们的模式匹配类是已经定义好的,当我们的master接收到worker发来的消息时,进行模式匹配: . 这里还有一个知识点,我们可以发现,当我们进行模式匹配时,我们并没有使用new方法

Apache Spark源码走读之7 -- Standalone部署方式分析

欢迎转载,转载请注明出处,徽沪一郎. 楔子 在Spark源码走读系列之2中曾经提到Spark能以Standalone的方式来运行cluster,但没有对Application的提交与具体运行流程做详细的分析,本文就这些问题做一个比较详细的分析,并且对在standalone模式下如何实现HA进行讲解. 没有HA的Standalone运行模式 先从比较简单的说起,所谓的没有ha是指master节点没有ha. 组成cluster的两大元素即Master和Worker.slave worker可以有1到

第66讲:Scala并发编程实战初体验及其在Spark源码中的应用解析

王家林亲授<DT大数据梦工厂>大数据实战视频“Scala深入浅出实战经典”视频.音频和PPT下载!第66讲:Scala并发编程实战初体验及其在Spark源码中的应用解析百度云:http://pan.baidu.com/s/1pJ5jzHx腾讯微云:http://url.cn/aSawrm360云盘:http://yunpan.cn/cctL3QYACaVNa  访问密码 c0fb 信息来源于 DT大数据梦工厂微信公众账号:DT_Spark

第3课 Scala函数式编程彻底精通及Spark源码阅读笔记

本课内容: 1:scala中函数式编程彻底详解 2:Spark源码中的scala函数式编程 3:案例和作业 函数式编程开始: def fun1(name: String){ println(name) } //将函数名赋值给一个变量,那么这个变量就是一个函数了. val fun1_v = fun1_ 访问 fun1_v("Scala") 结果:Scala 匿名函数:参数名称用 => 指向函数体 val fun2=(content: String) => println(co

大数据Spark蘑菇云前传第15课:Scala类型参数编程实战及Spark源码鉴赏(学习笔记)

前传第15课:Scala类型参数编程实战及Spark源码鉴赏 本課課程: Spark源码中的Scala类型系統的使用 Scala类型系統编程操作实战 Spark源码中的Scala类型系統的使用 classOf[RDD[_]] 這個也是类型系統 這里的意思是說 B 這種類型必需至少是 A 這樣類型 Ordering Scala类型系統编程操作实战 作為類型系統最大的就可以對類型進行限制,在Scala 中的類型系統,他本身也作為對象.e.g. 我們可以建立 Person 這個類,現在可以建立一個什麼

第2课 Scala面向对象彻底精通及Spark源码SparkContext,RDD阅读总结

第2课:Scala面向对象彻底精通及Spark源码阅读本期内容:1 Scala中的类.object实战详解 2 Scala中的抽象类.接口实战详解 3 综合案例及Spark源码解析 一:定义类class HiScala{private var name = "Spark" def sayName(){println(name)}def getName = name} Scala中,变量与类中的方法是同等级的,可以直接赋值给方法. scala中的get与set与Java中的get,set

大数据Spark蘑菇云前传第16课:Scala implicits编程彻底实战及Spark源码鉴赏(学习笔记)

本課課程: Spark源码中的Scala的 implicit 的使用 Scala的 implicit 编程操作实战 Scala的 implicit 企业级最佳实践 Spark源码中的Scala的 implicit 的使用 這個東西意義非常重大,RDD 本身沒有所謂的 Key, Value,只不過是自己本身解讀的時候把它變成 Key Value 的方法去解讀,RDD 本身就是一個 Record. RDD 本身沒有 reduceByKey,它是用了隐式转换,转换了PairRDDPartition 類

Android 源码系列之&lt;十三&gt;从源码的角度深入理解LeakCanary的内存泄露检测机制(中)

转载请注明出处:http://blog.csdn.net/llew2011/article/details/52958563 在上篇文章Android 源码系列之<十二>从源码的角度深入理解LeakCanary的内存泄露检测机制(上)中主要介绍了Java内存分配相关的知识以及在Android开发中可能遇见的各种内存泄露情况并给出了相对应的解决方案,如果你还没有看过上篇文章,建议点击这里阅读一下,这篇文章我将要向大家介绍如何在我们的应用中使用square开源的LeakCanary库来检测应用中出

Android 源码系列之&lt;五&gt;从源码的角度深入理解LayoutInflater.Factory之主题切换(中)

转载请注明出处:http://blog.csdn.net/llew2011/article/details/51287391 在上篇文章中我们主要讲解了LayoutInflater渲染xml布局文件的流程,文中讲到如果在渲染之前为LayoutInflater设置了Factory,那么在渲染每一个View视图时都会调用Factory的onCreateView()方法,因此可以拿onCreateView()方法做切入口实现主题切换功能.如果你不清楚LayoutInflater的渲染流程,请点击这里.