06 2017 档案

摘要:创建RDD: 1:使用程序中的集合创建RDD,主要用于进行测试,可以在实际部署到集群运行之前,自己使用集合构造测试数据,来测试后面的spark应用流程。 2:使用本地文件创建RDD,主要用于临时性地处理一些储存了大量数据的文件 3:使用HDFS文件创建RDD,应该是最常用的生产环境处理方式,主要可以 阅读全文
posted @ 2017-06-12 15:42 yesyeszero 阅读(204) 评论(0) 推荐(0)
摘要:Spark核心组件 1、Driver 2、Master 3、Worker 4、Executor 4、Task 1:Driver程序启动后,会做一些初始化的操作,在这个过程中,就会发送请求到Master上,进行Spark应用程序的注册,说白了,就是让Master知道,有一个新的Spark程序要运行。 阅读全文
posted @ 2017-06-12 10:51 yesyeszero 阅读(232) 评论(0) 推荐(0)
摘要:集合的函数式编程: 实战常用: 阅读全文
posted @ 2017-06-08 11:00 yesyeszero 阅读(168) 评论(0) 推荐(0)
摘要:高阶函数 Scala中,由于函数时一等公民,因此可以直接将某个函数传入其他函数,作为参数。这个功能是极其强大的,也是Java这种面向对象的编程语言所不具备的。 接收其他函数作为函数参数的函数,也被称作高阶函数 高阶函数的另一个功能是将函数作为返回值 高阶函数的类型推断 高阶函数可以自己推断出函数类型 阅读全文
posted @ 2017-06-07 17:41 yesyeszero 阅读(189) 评论(0) 推荐(0)
摘要:trait调用链 Scala中支持让类继承多个Trait后,依次调用多个Trait中的同一个方法,只要让多个trait的同一个方法中,在最后都执行super.方法即可 类中调用多个trait中都有这个方法时,首先会从最右边的trait的方法开始执行,然后依次往左执行,形成一个调用链条 这种特性非常强 阅读全文
posted @ 2017-06-07 14:48 yesyeszero 阅读(239) 评论(0) 推荐(0)
摘要:Scala中Trait是一种特殊概念 首先我们可以将Triat做为接口来使用,此时的Triat就与java中的接口非常相似 在Triat中可以定义抽象方法,就与抽象类中的抽象方法一样,只要不给出具体的实现即可 类可以使用extend是关键字来继承Triat,注意这里不是Implement,而是ext 阅读全文
posted @ 2017-06-07 10:48 yesyeszero 阅读(339) 评论(0) 推荐(0)
摘要:对象 Object,相当于class单个实例,通常在里面放一些静态的filed或method 第一次调用object方法时候,就会执行object的constructor,也就是Object中不在method中的代码,但是Object不能定义接收参数的constructor 注意,Object的co 阅读全文
posted @ 2017-06-06 16:30 yesyeszero 阅读(167) 评论(0) 推荐(0)
摘要:创建Map 访问Map元素 修改Map的元素 遍历Map Map的排序 Tuple 阅读全文
posted @ 2017-06-06 11:31 yesyeszero 阅读(196) 评论(0) 推荐(0)
摘要:使用yield和函数式编程转换数组 阅读全文
posted @ 2017-06-05 17:35 yesyeszero 阅读(431) 评论(0) 推荐(0)
摘要:在Scala中,Array代表的含义与Java类似,也是长度不可改变的数组。此外,由于Scala与java都是运行在JVM中,双方可以互相调用,因此Scala数组底层实际上是java数组。列如字符串数组java的String[],整数的数组int[]. 可以直接使用Array()创建数组,元素类型自 阅读全文
posted @ 2017-06-05 16:56 yesyeszero 阅读(5751) 评论(0) 推荐(1)
摘要:过程: 在Scala中,定义函数时,如果函数体直接包裹在花括号里面,而没有使用=连接,则函数的返回值类型就是Unit.这样的函数就被称之为过程。 过程通常用于不需要返回值类型的函数。 过程还有一种写法,就是将函数的放回值类型定义为Unit. lazy 值: 在Scala中,提供了lazy特性,也就是 阅读全文
posted @ 2017-06-05 15:46 yesyeszero 阅读(239) 评论(0) 推荐(0)