Scala函数式编程 ------------------------------------------------------------------------------------------------------------------------/** * 函数可以被简单的被认为是包裹了一条或几条语句的代码体, * 该代码体接收若干参数,经过代码体处理后返回结果, * 刑如数学中的f(x) = x + 1 *  * 在Scal中函数式一等公民,可以像变量一样被传递,被赋值,同时 …
/** * 如果有这些语法的支持,我们说这门语言是支持面向对象的语言 * 其实真正面向对象的精髓是不是封装.继承.多态呢? * --->肯定不是,封装.继承.多态,只不过是支撑面向对象的 * 一些语言级别的语法和功能,真正的面向对象其实有三个核心特征: * 第一:对象不用关心消息从哪里来,也不关心消息到哪去,只关心消息处理本身 * ,也就是说面向对象是弱耦合的且对象是消息驱动的,或者说对象是数据驱动的 * 第二:一个对象的行为不影响另一个对象的行为,一个对象挂掉了另一个对象 * 不会随着它一起挂…
机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理.源码解析及测试 关键字:决策树.python.源码解析.测试作者:米仓山下时间:2018-10-24机器学习实战(Machine Learning in Action,@author: Peter Harrington)源码下载地址:https://www.manning.com/books/machine-learning-in-actiongit@github.com:pbharrin/ma…
1.环境搭建 基础环境配置 jdk+idea+maven+scala2.11.以上工具安装配置此处不再赘述. 2.源码导入 官网下载spark源码后解压到合适的项目目录下,打开idea,File->open 找到源码文件夹,选中spark-parent的pom文件,确定-> open as a project.接下来就是漫长的依赖解析过程. 3.依赖解析完成后,得到一个漂亮的spark项目 4. 尝试编译.最近需要用到spark-sql相关的东西,我们先尝试编译一下spark-sql,在ide…
本课内容1.Spark中Scala集合操作鉴赏2.Scala集合操作实战 ------------------------------------------------------------------------------------------------------------------------ /** * 大数据技术是数据的集合以及对数据集合的操作技术的统称,具体来说: * 1.数据集合:会涉及数据的搜集.存储等,搜集会有很多技术,存储现在比较经典的是使用Hadoop, * …
基于1.1.5-alpha版本,具体源码笔记可以参考我的github:https://github.com/saigu/JavaKnowledgeGraph/tree/master/code_reading/canal 本文将对canal的启动模块deployer进行分析. Deployer模块(绿色部分)在整个系统中的角色如下图所示,用来启动canal-server. 模块内的类如下: 为了能带着目的看源码,以几个问题开头,带着问题来一起探索deployer模块的源码. CanalServer…
1. scala初识 spark由scala编写,要解析scala,首先要对scala有基本的了解. 1.1 class vs object A class is a blueprint for objects. Once you define a class, you can create objects from the class blueprint with the keyword new. import java.io._ class Point(val xc: Int, val yc…
本课内容1.Map和Tuple在Spark源码中的鉴赏2.Map和Tuple代码操作实战 ------------------------------------------------------------------------------------------------------------------------/** *  Scala中最常见的两种数据结构:Map 和 Tuple *   *  Map初步感受就是key,value方式,key即是值的索引,排列非常规按照Hash…
/** * 函数式编程进阶: * 1.函数和变量一样作为Scala语言的一等公民,函数可以直接赋值给变量 * 2.函数更常用的方式是匿名函数,定义的时候只需要说明输入参数的类型和函数体即可,不需要名称, * 一般会把它赋值给变量,在Spark源码中大量存在 * 3.函数可以作为参数直接传递给函数,极大的简化了编程代码,在Java中需要通过callback来实现 * 这样的功能 * 4.当函数的返回类型是函数的时候,这就表明Scala函数实现了闭包,Scala函数其实是类和对象, * 所以,Sca…
王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-87讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 腾讯微云:http://url.cn/TnGbdC 360云盘:http://yunpan.cn/cQ4c2UALDjSKy 访问密码 45e2土豆:http://www.tudou.com/programs/view/NGgUD5FBQaA/优酷:http://v.youku.com/v_show/id_…