自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

转载 第十九课:Scala的包,继承复写

包在写代码的过程中,无处不在 class SQLContext private[sql]( @transient val sparkContext: SparkContext, @transient protected[sql] val cacheManager: ...

2016-08-11 07:15:00 157

转载 第十八课:Scala偏函数,异常,Lazy值编码实战

偏函数的英文是Partial Function(部分函数),从这名字来看很容易理解为函数没有定义完,有哪些情况是函数没有定义完? 函数没有定义完太常见了,因为我们有可能是不知道全部的业务逻辑的,所以偏函数是非常常见的 之前说过,Scala的函数背后都是类,例如会有: trait F...

2016-08-10 07:17:00 121

转载 第十七课:Scala并发编程实战

其实我们可以发现,我们一直处在并发编程的世界里 Spark 有以前是使用Akka的,Akka是对Scala的Actor进行了封装 Scala的Actor有点像邮件,一个人发邮件到邮箱,另外一个人可以接收到邮件进行处理,处理之后回复邮件, 其实Scala的Actor是非常像邮件的 ...

2016-08-09 07:38:00 138

转载 第十六课:Scala implicit编程实战

隐式转换会先看自己的上下文是否有能力转换,如果没有,就会看伴生对象中是否有能力转换 隐式转换的几种使用方式:1.伴生对象中 2.通过import的方式把隐式转换的功能import进来 隐式转换的方式:1.通过方法 2.隐式参数 3.导入 在Spark的RDD...

2016-08-06 16:20:00 113

转载 第十五课:Scala类型参数编程实战

框架都很喜欢用类型系统:因为框架想包含所有的业务和变化 类型系统就是:你表示某种类型,但是在声明的时候又没有表示什么类型,只在实例化的时候才表示什么类型 而且可以对类型进行限制,在Scala类型系统,把类型本身作为对象,对对象进行限制 其实看一下Spark的源码,就可以看到...

2016-08-06 12:25:00 104

转载 第四课:Scala的控制结构

package com.dt.spark.scala.basics /** * Scala中的基本控制结构,有顺序,条件和循环三种方式,这和其他的JVM语言是一致的 * 但是scala也有一些高级的流程控制结构,在这里我们主要if,for,while等三种控制结构及其企业级最佳实践 ...

2016-08-05 21:41:00 201

转载 第三课:第一个Scala程序

package com.dt.spark.scala.basics /** * object作为Scala的关键字,相当于 java的 public static class的修饰符, * 也就是说object中的成员都是静态的,也就是说在object中的main方法也是静态的, ...

2016-08-05 21:39:00 125

转载 第二课:Scala第一课

归纳总结:1.Java,Scala,JVM的关系图 2.val的战略意义 3.理解Scala中一切皆对象 4.关于apply方法 转载于:http...

2016-08-05 21:37:00 80

转载 第一课:大数据时代的黄金语言 Scala

1.JVM的企业级霸主地位和Java 我们经常说Java很重要,其实指的是JVM很重要,是因为JVM通过软件虚拟化技术把不同OS的差异给屏蔽掉了 其实这就是代理模式 2.黄金语言Scala Scala支持面向对象和函数式编程的完美结合 面向对象可以帮助我们轻松构建各种规模的项目...

2016-08-05 21:33:00 133

转载 第十四课:Scala集合上的函数式编程实战

** A base trait for iterable collections. * $iterableInfo */ trait Iterable[+A] extends Traversable[A] with GenIterabl...

2016-08-05 08:00:00 86

转载 第十三课:Scala模式匹配实战

模式匹配在很多地方都大量用到,一般会和case class结合起来使用,case class中的成员默认是不能变的 其实模式匹配看到它的语法,就是一个函数 package com.dt.spark.scala.basics class DataFramework case ...

2016-08-03 19:17:00 89

转载 第十二课:Scala函数式编程进阶

看到RDD def map[U: ClassTag](f: T => U): RDD[U] = withScope { 其实这里传递的参数是函数,函数名称是f,参数是T,返回类型是U 我们可以看到到处都是函数!!! package com.dt.spark.sc...

2016-08-02 21:27:00 146

转载 第十一课:Scala面向接口编程彻底实战

Scala中的接口是trait,但是trait是可以有具体方法的,当trait中全是具体方法的时候,就变成了工具类 1.trait中可以是每个方法都被实现,例如SparkContext的Logging,这种类一般都作为工具类 class SparkContext(config:...

2016-08-02 12:30:00 218

转载 第十课:Scala继承彻底实战

1.继承是为了代码复用和维护 2.为了更好地面向接口编程 我们知道RDD中会有很多子类 abstract class RDD[T: ClassTag]( @transient private var _sc: SparkContext, @transien...

2016-08-02 08:47:00 84

转载 第九课:Scala类和对象彻底实战

1.关于类的构造 abstract class RDD[T: ClassTag]( @transient private var _sc: SparkContext, @transient private var deps: Seq[Dependency[_]] )...

2016-08-01 21:40:00 125

转载 第八课:零基础实战Scala最常用数据结构Map和Tuple

Map为什么很重要? 如果我们有海量的数据,基于Map检索会非常快!!!但是如果在array中会很慢,尤其是修改的时候 而Tuple可以是不同类型的对象放在同一个数据结构中 无论是Map还是Tuple,都是Scala或者Spark最常用的数据结构 package com.d...

2016-08-01 21:39:00 110

转载 Spark机器学习第5课:深入理解RDD、DataFrame、DataSet、Structured

RDD的操作是以Partition为单位,输入的是Partition,输出的是itertor 它的计算是不透明,它是什么类型,从用户应用程序的角度来讲,类型是不透明的 由此我们无法做更多的细致优化,如果我们能清楚地知道类型,就能做更多的限制,也就有了更多优化的空间 以下是一些...

2016-07-31 13:12:00 133

转载 Spark机器学习第4课: 深度解析Structured Streaming

Structed Streaming在2.0推出的时候,其实并不是很成熟,包括一些功能的不完善和会有bug 但是它给我们带来了全新的视野,导致我们可以更容易去使用流处理,和更高效使用流去处理数据 现实中的目标是end-to-end continuous app 它已经不是一个流...

2016-07-31 13:02:00 184

转载 第三课:Structed Streaing in Spark2.0

、 它想要实现E2E continue app 蓝色线是传统应用,橙色线是新型应用 例如加入了Structed Streaming之后,可以进行交互式查询 还可以使用机器学习模型进行预测,推荐等等 它把批处理(Spark 2.0并没有改变1.6.x批处理的特性)和交互式查询进行了co...

2016-07-31 12:56:00 99

转载 第七课:零基础实战Scala面向对象编程

面向对象的三大特征:1.对象只需要关心消息处理本身,不需要关心消息哪里来,去哪里(也就是数据驱动) 2.一个对象的行为不会影响另外一个对象 3.面向接口编程 也就是说,Scala和Java都不是面向对象的语言,都只是支持面向对象的语言,用封装,继承,多态来支持者三大特征 函数:是...

2016-07-30 12:28:00 121

转载 第七课:零基础实战Scala集合操作

package com.dt.spark.scala.basics import scala.collection.mutable.ArrayBuffer /** * 大数据技术是数据集合以及对数据集合操作的统称,具体来说: * 1.数据集合:会涉及数据的收集,存储等,...

2016-07-30 06:54:00 65

转载 第八课:1分钟内彻底理解大数据机器学习

而在大数据时代下,数据量越大,模型就会越准确,而结果就会越准确!!! 归纳总结:1.理解机器学习 2.理解大数据时代下的机器学习 转载于:https://my.osch...

2016-07-29 22:02:00 75

转载 第五课:零基础实战函数式编程

package com.dt.spark.scala.basics /** * 函数是可以被简单地认为一条或者几条语句的代码体,该代码接收若干参数,经过代码处理后返回结果 * 例如形如数学中的f(x)=x+1,在Scala中,函数是一等公民,可以像变量一样被传递,被赋值,...

2016-07-29 07:17:00 71

转载 第二课:Spark 第二代Tungsten引擎测试数据和引擎实现内幕

Spark 2.0的大多数代码比Spark 1.6的快5-10倍(所谓的大多数代码指的是hashjoin,filter等等,但是全局的排序在2.0版本并没有做太多的努力),如果在Spark 1.6比较耗CPU的话,在2.0上有很大的改进 其实特别大的改进指的就是数据规模特别大且特别耗CPU的...

2016-07-28 21:05:00 210

转载 第一课:理解Spark 的三代API

Spark第一代API:RDD RDD: 五大核心特征: * - A list of partitions * - A function for computing each split * - A list of dependencies on other RDDs *...

2016-07-28 21:02:00 131

转载 第七课:Spark 机器学习内幕剖析

1.Spark机器学习的本质是什么? 机器学习,数据+算法(迭代), 从某个角度而言,其实Spark的机器学习就是Spark 平台之上的函数库,这些函数基于RDD,DataFrame,DataSet Spark机器学习的数据来源,在Spark的最底层肯定是RDD封装的,这个和Spark具...

2016-07-28 20:46:00 56

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除