[完]Spark安装学习实践

介绍如何在Hadoop2.60伪分布式的基础上,安装Spark。在Spark Shell下编写代码,和编写Scala和Java独立程序,以及简单的RDD操作。
摘要由CSDN通过智能技术生成

【参考】http://dblab.xmu.edu.cn/blog/804-2/

一、前提

  • 安装Hadoop2.6.0以上;
  • 安装JAVA JDK 1.7以上。

二、下载Spark

官方网站:http://spark.apache.org/downloads.html
1. 选择版本:Spark 1.6.2
2. 选择包类型:Pre-build with user-provided Hadoop [can use with most Hadoop distributions]
3. 选择下载类型:Select Apache Mirror
4. 下载Spark:点击接下来的链接,即可下载

三、安装Spark

假设Spark下载到当前用户的HOME目录下。

# 解压缩
sudo tar -zxf spark-1.6.2-bin-without-hadoop -C /usr/local/
cd /usr/local
sudo mv ./spark-1.6.2-bin-without-hadoop/ ./spark
# 修改权限
sudo chown -R hadoop:hadoop ./spark

配置Spark,修改配置文件spark-env.sh。

cd /usr/local/spark/conf
cp spark-env.sh.template spark-env.sh
vim spark-env.sh

添加配置信息。

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

配置完成,无需Hadoop那样运行启动命令,可直接使用。使用示例程序,验证Spark是否安装成功。

cd /usr/local/spark
bin/run-example SparkPi
# 2>&1,将所有信息都输出到stdout中
bin/run-example SparkPi 2>&1 | grep "Pi is"

示例程序结果:

hadoop@ubuntu:/usr/local/spark$ bin/run-example SparkPi 2>&1 | grep "Pi is"
Pi is roughly 3.14576

四、使用Spark Shell编写代码

  • 启动Spark Shell,会自动创建为sc的spark context对象和名为sqlContext的sql context对象。
cd /usr/local/spark
bin/spark-shell

运行spark shell后结果:

......
16/09/14 05:18:32 INFO repl.SparkILoop: Created spark context..
Spark context available as sc.
16/09/14 05:18:33 INFO repl.SparkILoop: Created sql context..
SQL context available as sqlContext.
scala> 
  • 加载text文件,spark创建sc,可加载本地文件和HDFS文件创建RDD。
scala> val textFile = sc.textFile("file:///usr/local/spark/README.md")
  • 简单的RDD操作
# 获取RDD文件textFile的第一行内容
scala> textFile.first()
# 获取RDD文件textFile所有项的计数
scala> textFile.count()
# 抽取含有"Spark"的行,返回一个新的RDD
scala> val lineWithSpark = textFile.filter(line => line.contains("Spark"))
# 统计新的RDD的行数
scala> lineWithSpark.count()
# 通过组合RDD操作,实现简易MapReduce操作
scala> textFile.map(line => line</
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值