Spark介绍,安装

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark介绍,安装相关的知识,希望对你有一定的参考价值。

1.简单介绍和安装:

(1)Spark使用scala编写,运行在JVM(java虚拟机)上。所以,安装Spark需要先安装JDK。安装好java后,到官网下载安装包(压缩文件):http://spark.apache.org/downloads.html ,当前使用的版本是:spark-1.6.1-bin-hadoop2.4.tgz。

(2)解压,查看目录内容:

tar -zxvf spark-1.6.1-bin-hadoop2.4.tgz
cd spark-1.6.1-bin-hadoop2.4

这样我们可以在单机模式下运行Spark了,Spark也可以运行在Mesos、YARN等上。


2.Spark交互式shell:

(1) Spark只支持Scala和Python两种Shell。为了对Spark Shell有个感性的认识,我们可以follow官网的quick-start教程:http://spark.apache.org/docs/latest/quick-start.html

首先启动Spark shell,Scala和Python有2种不同启动方式(下面,我们以Scala为例介绍):

Scala:

./bin/spark-shell

scala启动shell参数:

./bin/spark-shell --name "axx" --conf spark.cores.max=5 --conf spark.ui.port=4041

Python:

./bin/pyspark

启动后有如下界面:

技术分享

如果需要修改显示的日志级别,修改$SPARK_HOME/conf/log4j.properties文件。

(2)Spark中第一个重要名词:RDD(Resilient Distributed Dataset),弹性分布式数据集

在Spark中,使用RDD来进行分布式计算。RDD是Spark对于分布数据和分布计算的基本抽象。


RDD包括两类操作,actions 和 transformations;

actions:会产生新的值。

transformations:会产生一个新的RDD。

val lines = sc.textFile("file:///spark/spark/README.md")

通过读取文件的方式来定义一个RDD。默认地,textFile会读取HDFS上的文件,加上file://指定读取本地路径的文件。

lines.count()
lines.first()

上边是2个actions操作,分别返回RDD的行数和第一行数据。

val linesWithSpark = lines.filter(line=>lines.contains("spark"))

上边是一个transformations操作,生成一个新的RDD,该RDD是lines的一个子集,只返回包含spark的行。


3.Spark核心概念:

每个Spark应用都包含一个驱动程序,该驱动程序在集群中执行并行计算。在前面的事例中,驱动程序就是spark shell本身。驱动程序通过SparkContext对象(对计算集群的一个连接)来访问Spark。

为了运行RDD操作,驱动程序会管理一些叫做执行器的节点。当在分布式系统中运行时,架构图如下:

技术分享


订单


本文出自 “雪花” 博客,请务必保留此出处http://6216083.blog.51cto.com/6206083/1845260

以上是关于Spark介绍,安装的主要内容,如果未能解决你的问题,请参考以下文章

spark关于join后有重复列的问题(org.apache.spark.sql.AnalysisException: Reference '*' is ambiguous)(代码片段

Spark介绍,安装

Spark闭包与序列化

spark考试

Spark编程实战-词频统计

Spark编程实战-词频统计