启动spark-shell
如果你有一个Hadoop 集群, 并且Hadoop 版本支持YARN, 通过为Spark master 设定yarn-client 参数值,就可以在集群上启动Spark 作业:
$ spark-shell --master yarn-client
如果你是在自己的计算机上运行示例,可以通过设定local[N] 参数来启动本地Spark 集群,其中N 代表运行的线程数,或者用* 表示使用机器上所有可用的核数。比如,要在一个8 核的机器上用8 个线程启动一个本地集群,可以输入以下命令:
$ spark-shell --master local[*]
列出了shell 的所有命令。运行:history 或:h?,可以帮你找到之前在某个会话中写过,但一时又想不起来的变量或函数名称。
运行:paste,可以帮你插入剪贴板中的代码
scala> val arrRD=sc.makeRDD(Array("hello","hi","how are you","hehe"))
arrRD: org.apache.spark.rdd.RDD[String] = ParallelCollectionRDD[270] at makeRDD at <console>:44
scala> def iscontain(str:String)=str.contains("o")
iscontain: (str: String)Boolean
scala> arrRD.filter(iscontain).collect
res215: Array[String] = Array(hello, how are you)
scala> arrRD.filter(!iscontain(_)).collect
res229: Array[String] = Array(hi, hehe)
scala> arrRD.filter(iscontain).map(x=>(x,x.length)).collect
res217: Array[(String, Int)] = Array((hello,5), (how are you,11))
用元组和case class对数据进行结构化