Spark学习--spark-shell使用

原创 2015年11月18日 21:13:27

<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255);">Spark-shell使用</span>

配置好Spark集群,测试Sparkwordcount程序,可以通过基本的Spark-shell来进行交互式的代码提交,比如:

<span style="font-size:18px;">val textFile = sc.textFile("words/test.txt")</span>



<span style="font-size:18px;">val result = textFile.flatMap(line => line.split("\\s+")).map(word => (word,1)).reduceByKey(_+_)</span>
<span style="font-size:18px;">#上面的为基本先把文件的每行进行分割,再把字符串进行计数,接着进行累加</span>
<span style="color:#ff0000;"><span style="font-size:18px;">自己在测试的时候在第一步传一个不存在的文件,则当时第一步不提示出错,等到第二步,执行reduceByKey(_+_)来进行统计的时候会报错,这就应了RDD在transformation的时候不做任何操作,只是基本的做个转换,这就体现了RDD的“惰性”。</span></span>
<pre name="code" class="python"><span style="font-size:18px;">result.saveAsTextFile("words/result1")
</span>
#第三步是将文件保存在hdfs集群的相应位置下。

<span style="font-size:18px;">好了,第一步结束了,也许你想自己编写一个比较长的scala程序来一次性执行,ok,也可以满足你!来看:</span>
<span style="font-size:18px;">创建myFile.scala 代码如下:</span>
<h3><pre name="code" class="java"><pre name="code" class="python">import org.apache.spark._
import SparkContext._

val sc = new SparkContext()
val textFile = sc.textFile("words/test.txt")
val result = textFile.flatMap(line => line.split("\\s+")).map(word => (word,1)).reduceByKey(_+_)
result.saveAsTextFile("words/gaga")
stty echo
#最后一句是设置终端的,如果不加执行玩程序你将会发现,终端命令显示不出来而且不换行


<span style="font-size:18px;color:#000099;">然后执行./spark-shell < myFile.scala</span>
<span style="font-size:18px;color:#000099;">就ok了,网上还有说写个脚本如下:</span>
<span style="font-size:18px;color:#000099;"><span style="font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 24px; background-color: rgb(245, 245, 245);">#!/usr/lib/spark/bin/spark-shell</span><br style="box-sizing: content-box; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 24px; background-color: rgb(245, 245, 245);" /><span style="font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 24px; background-color: rgb(245, 245, 245);">scala 代码</span></span>

可以在下图看到执行两次保存的文件,Make it!





版权声明:本文为博主原创文章,未经博主允许不得转载。

Spark学习(一)---Spark-shell使用

Spark-shell使用 配置好Spark集群,测试Sparkwordcount程序,可以通过基本的Spark-shell来进行交互式的代码提交,比如: val textFile = sc....
  • ASIA_kobe
  • ASIA_kobe
  • 2015年11月18日 21:06
  • 1124

SparkShell实战

1、Spark编程模型 1.1 术语定义 l应用程序(Application): 基于Spark的用户程序,包含了一个Driver Program 和集群中多个的Executor; l驱动程序(...
  • oanqoanq
  • oanqoanq
  • 2016年03月27日 20:34
  • 3950

Learning Spark——使用spark-shell运行Word Count

在hadoop、zookeeper、hbase、spark集群环境搭建 中已经把环境搭建好了,工欲善其事必先利其器,现在器已经有了,接下来就要开搞了,先从spark-shell开始揭开Spark的神器...
  • Trigl
  • Trigl
  • 2017年04月27日 11:20
  • 4392

spark shell ,在Windows上build Spark

在本机(Windows 8)上安装spark玩一玩,Spark的Quick Start上没有指明具体步骤,自己Build好了之后把步骤记录一下。 首先,到Spark的官网上下载Spark的压缩包...
  • u012302488
  • u012302488
  • 2016年04月09日 23:32
  • 1247

spark-shell 基本用法

spark-shell 是 scala 语言的 REPL(Read-Eval-Print-Loop,通俗地理解就是命令行模式) 环境,同时针对 spark 做了一些拓展。1. 启动 spark-she...
  • lanchunhui
  • lanchunhui
  • 2016年06月05日 16:35
  • 2710

spark 操作 spark-shell

读取HDFS 上文件命令, spark.read.textFile("/user/ssy.097").count spark.read.wholeTextFiles SparkCon...
  • StayHungry2016
  • StayHungry2016
  • 2017年05月31日 10:28
  • 768

Spark Shell With Python

配置Spark环境    1) 下载spark:http://spark.apache.org/downloads.html    2) 进入spark-1.6.1-bin-hadoop2.4,为...
  • Leonis_v
  • Leonis_v
  • 2016年06月15日 17:39
  • 1312

Spark入门实战系列--3.Spark编程模型(上)--概念及SparkShell实战

【注】该系列文章以及使用到安装包/测试数据 可以在《倾情大奉送–Spark入门实战系列》获取1 Spark编程模型 1.1 术语定义 应用程序(Application): 基于Spark的用户程序...
  • yirenboy
  • yirenboy
  • 2015年08月13日 09:14
  • 3906

Spark Shell简单使用

基础 Spark的shell作为一个强大的交互式数据分析工具,提供了一个简单的方式学习API。它可以使用Scala(在Java虚拟机上运行现有的Java库的一个很好方式)或Python。在Spark目...
  • universe_ant
  • universe_ant
  • 2016年07月24日 16:41
  • 4985

spark-shell客户机设置

本文介绍spark集群客户机的设置安装程序spark集群是standalone集群在root帐号下,从spark集群的master上复制spark1.5.2的安装包到目录下,这样配置文件就已经复制过来...
  • sheismylife
  • sheismylife
  • 2015年11月19日 15:56
  • 2518
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spark学习--spark-shell使用
举报原因:
原因补充:

(最多只允许输入30个字)