Spark
Winterto1990
这个作者很懒,什么都没留下…
展开
-
Scala中常见的容器 List
为何选择Scala?Scala是一门混合了函数式和面向对象的语言。用Scala创建多线程应用时,你会倾向于函数式编程风格,用不变状态编写无锁代码。Scala提供一个基于actor的消息传递模型,消除了涉及并发的痛苦问题。运用这个模型, 你可以写出简洁的多线程代码,而无需顾虑多线程间的数据竞争,以及处理加锁和释放带来的痛苦。下面介绍一下在Scala中常见的容器. ListList转载 2016-08-03 16:28:14 · 4003 阅读 · 0 评论 -
Ubuntu系统上集群之间ssh实现无密码登录
准备条件:安装ssh-serversudo apt-get install openssh-server安装ssh-clientsudo apt-get install openssh-client这个操作是要让Master节点可以无密码SSH登陆到Slave节点上。首先生成 Master 的公匙,在 Master 节点终端中执行:cd原创 2016-10-19 10:29:00 · 1949 阅读 · 0 评论 -
Scala Actor并发编程
Java中的并发编程主要通过线程实现的,通过共享资源的机制实现并发,但会面临着死锁的问题。在Scala中,是通过消息传递来实现并发的,而Actor正是实现消息传递的。Scala的actor提供了一种基于事件的轻量级线程。只要使用scala.actors.Actor伴生对象的actor方法,就可以创建一个actor。它接受一个函数值/闭包做参数,一创建好就开始运行。用!()方法给acto转载 2016-08-04 10:10:32 · 1633 阅读 · 0 评论 -
Scala 文件 I/O
Scala Option(选项)类型用来表示一个值是可选的(有值或无值)。Option[T] 是一个类型为 T 的可选值的容器: 如果值存在, Option[T] 就是一个 Some[T] ,如果不存在, Option[T] 就是对象 None 。接下来我们来看一段代码:// 虽然 Scala 可以不定义变量的类型,不过为了清楚些,我还是// 把他显示的定义上了 val转载 2016-08-03 23:17:54 · 844 阅读 · 0 评论 -
Scala 异常处理
Scala 的异常处理和其它语言比如 Java 类似。Scala 的方法可以通过抛出异常的方法的方式来终止相关代码的运行,不必通过返回值。抛出异常Scala 抛出异常的方法和 Java一样,使用 throw 方法,例如,抛出一个新的参数异常:throw new IllegalArgumentException捕获异常异常捕捉的机制与其他语言中一样转载 2016-08-03 23:11:26 · 1051 阅读 · 0 评论 -
Scala基础语法
如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法。Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。我们可以认为 Scala 程序是对象的集合,通过调用彼此的方法来实现消息传递。接下来我们来理解下,类,对象,方法,实例变量的概念:对象 - 对象有属性和行为。例如:一只狗的状转载 2016-08-03 19:04:23 · 1266 阅读 · 0 评论 -
Scala之旅-class和object详解
1.classscala的类和C#中的类有点不一样,诸如: 声明一个未用priavate修饰的字段 var age,scala编译器会字段帮我们生产一个私有字段和2个公有方法get和set ,这和C#的简易属性类似;若使用了private修饰,则它的方法也将会是私有的。这就是所谓的统一访问原则。细节的东西太多,还是上代码在注释里面细讲吧[java] view转载 2016-08-03 18:27:28 · 994 阅读 · 0 评论 -
Scala中常见的容器 Iterator (迭代器)
Scala Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法。迭代器 it 的两个基本操作是 next 和 hasNext。调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。调用 it.hasNext() 用于检测集合中是否还有元素。让迭代器 it 逐个返回所有元素最简单的方法是使用 while 循环:object Te转载 2016-08-03 17:34:56 · 8017 阅读 · 0 评论 -
Scala中常见的容器 Option(选项)
Scala Option(选项)类型用来表示一个值是可选的(有值或无值)。Option[T] 是一个类型为 T 的可选值的容器: 如果值存在, Option[T] 就是一个 Some[T] ,如果不存在, Option[T] 就是对象 None 。接下来我们来看一段代码:// 虽然 Scala 可以不定义变量的类型,不过为了清楚些,我还是// 把他显示的定义上了 val转载 2016-08-03 17:26:18 · 5654 阅读 · 2 评论 -
Scala中常见的容器 元组 Tuple
与列表一样,元组也是不可变的,但与列表不同的是元组可以包含不同类型的元素。元组的值是通过将单个的值包含在圆括号中构成的。例如:val t = (1, 3.14, "Fred") 以上实例在元组中定义了三个元素,对应的类型分别为[Int, Double, java.lang.String]。此外我们也可以使用以上方式来定义:val t = new Tuple3(1,转载 2016-08-03 17:21:45 · 5586 阅读 · 0 评论 -
Scala中常见的容器 Map
Map(映射)是一种可迭代的键值对(key/value)结构。所有的值都可以通过键来获取。Map 中的键都是唯一的。Map 也叫哈希表(Hash tables)。Map 有两种类型,可变与不可变,区别在于可变对象可以修改它,而不可变对象不可以。默认情况下 Scala 使用不可变 Map。如果你需要使用可变集合,你需要显式的引入 import scala.转载 2016-08-03 17:07:21 · 6338 阅读 · 1 评论 -
Scala中常见的容器 set
Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。Scala 集合分为可变的和不可变的集合。默认情况下,Scala 使用的是不可变集合,如果你想使用可变集合,需要引用 scala.collection.mutable.Set 包。默认引用 scala.collection.immutable.Set,不可变集合实例如下:val set = S转载 2016-08-03 17:02:14 · 2991 阅读 · 0 评论 -
Spark RDD API详解(一) Map和Reduce
RDD是Spark中的抽象数据结构类型,任何数据在Spark中都被表示为RDD。从编程的角度来看,RDD可以简单看成是一个数组。和普通数组的区别是,RDD中的数据是分区存储的,这样不同分区的数据就可以分布在不同的机器上,同时可以被并行处理。因此,Spark应用程序所做的无非是把需要处理的数据转换为RDD,然后对RDD进行一系列的变换和操作从而得到结果。本文为第一部分,将介绍Spark RDD中与Ma转载 2016-10-20 13:46:29 · 1607 阅读 · 0 评论