把Spark安装包下的”README.txt”上传到hdfs
通过hdfs的web控制台可以发现成功上传了文件:
启动Spark shell:
接下来通过以下命令读取刚刚上传到HDFS上的“README.md”文件 :
val count = file.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_+_)
对读取的文件进行以下操作:
val count = file.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_+_)
接下来使用collect命令提交并执行Job:
count.collect
从控制台可以看到我们的程序成功在集群上运行.
使用Spark交互模式:
1. 运行./spark-shell.sh
2. scala> val data = Array(1, 2, 3, 4, 5) //产生data
data: Array[Int] = Array(1, 2, 3, 4, 5)
3. scala> val distData = sc.parallelize(data) //将data处理成RDD
distData: spark.RDD[Int] = spark.ParallelCollection@7a0ec850 (显示出的类型为RDD)
4. scala> distData.reduce(_+_) //在RDD上进行运算,对data里面元素进行加和
12/05/10 09:36:20 INFO spark.SparkContext: Starting job...
5. 最后运行得到
12/05/10 09:36:20 INFO spark.SparkContext: Job finished in 0.076729174 s
res2: Int = 15