![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
基于Spark的分析挖掘
文章平均质量分 92
大勇任卷舒
这个作者很懒,什么都没留下…
展开
-
10.Spark基础
10.1 什么是Apache SparkSpark是针对大规模数据处理的高效通用引擎用Scala编写运行在JVM上的函数式编程语言Spark Shell交互式-进行数据探索Python或ScalaSpark Application用来进行大规模的数据处理Python,Scala或Java10.2 使用Spark Shell提供了交互式的数据探索(REPL)10.2.1 Spark Context每个spark应用需要Spark ContextSpa原创 2021-05-14 10:04:41 · 95 阅读 · 2 评论 -
9.Scala面向对象开发-3
9.1 继承-2保护构造9.1.1 保护当一个类不希望被继承、拓展时,可在类声明前加上final保留字final class year{…}当一个类的某些成员不希望被重写时,可以在成员声明前加上final保留字class year{ final def sign{…} }当超类中的某些成员需要被子类继承,又不想对子类以外成员可见时,在成员声明前加上protected保留字protected[this],将访问权限定于当前对象,类似于private[this]类中prot原创 2021-05-13 09:35:06 · 75 阅读 · 0 评论 -
8.Scala面向对象开发-2
8.1 对象单例对象伴生对象扩展类和特质构造一个扩展了指定类和特质的类的对象,同时拥有对象定义中给出的所有特性apply方法8.1.1 单例对象object语法定义了某个类的单个实例对象的构造器在该对象第一次被使用时调用object语法结构与class大致相同,除了object不能提供构造器参数通常使用单例对象的环境:作为存放工具函数或常量的地方共享单个不可变实例利用单个实例协调某个服务8.1.2 伴生对象当一个单例对象存在同名类的时候,称为伴生对象原创 2021-05-12 10:19:20 · 66 阅读 · 0 评论 -
7.Scala面向对象开发-1
7.1 Scala面向对象的概念类(class)类是对象的模板,通过构造类,能够使用new关键字声明一系列同结构的对象对象(object)除了使用类构造对象模板,可以使用object构造单例对象继承继承是类的拓展特质一个类只能继承自一个父类,但可以由多个特质拓展而成7.2 Scala类类定义getter方法setter方法构造器辅助构造器嵌套类7.2.1 类定义类成员主要包括字段(val跟var)、方法与函数(def),但Scala禁止使原创 2021-05-11 11:26:45 · 98 阅读 · 0 评论 -
6.Scala高阶
Scala高阶技巧高阶函数Scala作为一门“函数式编程语言”,函数是一个值,能被传递和操作模式匹配match表达式的高级应用,样例类类型参数通过类型参数构建类和函数、方法,使之适应不同类型的参数6.1 函数6.1.1 头等函数Scala里的函数是一个“头等函数”(first-class value)。像其他的值,函数可以被当成参数传递,也可以被当成结果返回6.1.2 匿名函数(anonymous functions)不命名的函数(x:Int).原创 2021-05-08 11:15:33 · 100 阅读 · 0 评论 -
5.Scala函数式编程-映射与元组
5.1 定义Map数组是包含一组元素的集合,映射是包含一组键值对应元素的集合。构造不可变映射val Z=Map(a1->b1, a2->b2, a3->b3)val Z=Map((a1,b1), (a2,b2), (a3,b3))an跟bn的类型可以不一致,an是键,bn是值,an互不相同,bn可以相同映射只是一个对应的查询,类似于指针构造可变映射val Y= scala.collection.mutable.Map((a1,b1), (a2,b2), (a3,b原创 2021-05-06 14:14:02 · 124 阅读 · 1 评论 -
4.Scala函数式编程-数组
4.1 Scala数组数组是最常用的收集一系列元素的结构数组的声明与其他数值类型声明类似定长数组声明val A= new Array [T] (N) val A=new Array [Int] (10)数组声明时若不给出值,会被初始化,初始化后同样能对数组成员进行赋值数组成员初始化,如Int类型的会都被初始化为0,String类型的会被初始化为Nullval B=Array(N1 ,N2)数组声明时若给出值,Scala可以进行类型推断,可以不用声明数组类型、长度A(n)=N原创 2021-04-30 10:09:12 · 113 阅读 · 1 评论 -
3.Scala函数式编程-控制结构
判断(if表达式)循环(while/do语句)枚举(for表达式)匹配(match表达式)异常处理(throw/try)输出(print/println)输入(readLine)3.1 判断(if表达式)检测语句是否为真,并执行之后的语句if(A) B ; else C (“;”号能省略吗?)A可以是任意返回布尔值的语句,或是布尔值的量,真则执行B,假则执行C;当B为空时,可写成 if(!A) Cdef min(x:Int,y:Int)={var a=xif(x>.原创 2021-04-29 09:32:39 · 108 阅读 · 1 评论 -
2.Scala基础语法-2
2.1 操作符运算使用中缀数学操作符+、-、*、/、%并产生对应的数值结果使用比较操作符<、>、>=、=<并产生布尔值结果使用逻辑操作符&&、||并产生布尔值结果使用对等操作符==、!=并产生布尔值结果使用位操作符&、|、^、~并产生数值结果实际上,ScaLa没有任何操作符,所有的操作符运算都是对方法(函数)的调用如1+2实际上是调用了.+() 这个方法1.+(2)在具体的调用中,调用+实际上包含了+的各种类型参数的重载,而无需额外定义原创 2021-04-28 12:32:51 · 310 阅读 · 0 评论 -
1.Scala基础语法-1
1.1 Scala概述1.1.1 什么是Scala?Martin Odersky在2001年开始开发ScalaSca(scalable)La(language)设计目标消除常见分布式处理的bugs让编程框架做规模决策让程序员根据需要进行控制1.1.2 为什么学习Scala?可扩展面向对象函数式编程兼容JAVA类库调用互操作语法简洁代码行短类型推断抽象控制静态类型化可检验安全重构支持并发控制强计算能力自定义其他控制结构原创 2021-04-27 10:03:28 · 805 阅读 · 2 评论