阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Spark 安装&配置

179次阅读
没有评论

共计 3474 个字符,预计需要花费 9 分钟才能阅读完成。

安装 Anaconda

Anaconda 是 Python 科学计算包的合集,在接下来的例子中,会用到其中的 matplotlib 用来生成一张柱状图。
下载地址:https://www.continuum.io/downloads
然后在 Terminal 中输入命令:

bash Anaconda2-4.1.1-Linux-x86_64.sh

注意,应该使用 4.1.1 版本的 Anaconda,因为其 Python 版本是 3.5,而 Spark 目前只支持 3.5 版本的 python,不能支持 3.6 版本的

安装 JavaSDK

$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install Oracle-java8-installer

配置 JAVA_HOME

在.bashrc 中对 JAVA_HOME 进行配置

vim ~/.bashrc
JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JAVA_HOME
PATH=$PATH:$JAVA_HOME
export PATH

安装 Spark

去官网下载压缩包,下载地址 http://spark.apache.org/downloads.html
将安装包解压:

$ tar -zxvf spark-2.0.0-bin-Hadoop2.7.tgz
$ rm spark-2.0.0-bin-hadoop2.7.tgz

启用 IPython Notebook

vim ~/ .bashrc
export PYSPARK_DRIVER_PYTHON=ipython
export PYSPARK_DRIVER_PYTHON_OPTS=notebook

检查是否安装成功(需重启 Terminal)

cd ~/spark-2.0.0-bin-hadoop2.7
./bin/pyspark

出现下面的即为 OK:

eversilver@debian:/usr/local/spark2.1$ ./bin/pyspark 
Python 3.5.2 |Anaconda 4.1.1 (64-bit)| (default, Jul  2 2016, 17:53:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/spark2.1/jars/slf4j-log4j12-1.7.16.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
17/05/03 14:50:12 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
17/05/03 14:50:12 WARN Utils: Your hostname, debian resolves to a loopback address: 127.0.1.1; using 192.168.142.133 instead (on interface eth0)
17/05/03 14:50:12 WARN Utils: Set SPARK_LOCAL_IP if you need to bind to another address
17/05/03 14:50:27 WARN ObjectStore: Failed to get database global_temp, returning NoSuchObjectException
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /__ / .__/\_,_/_/ /_/\_\   version 2.1.0
      /_/

Using Python version 3.5.2 (default, Jul  2 2016 17:53:06)
SparkSession available as 'spark'.
>>>

使用

  • 每个 Spark 应用都由一个驱动器程序(driver program)来发起集群上的各种并行操作。
  • 驱动器程序通过一个 SparkContext 对象来访问 Spark。这个对象代表对计算集群的一个连接。shell 启动时已经自动创建了一个 SparkContext 对象,是一个叫作 sc 的变量。有了 SparkContent 之后就可以用其来创建 RDD。
  • 第一个例子:
    #!/usr/bin/env python
    # coding=utf-8
    from pyspark import SparkConf, SparkContext
    #下面的第一个参数是集群 URL,由于这里运行在本机单线程上,所以用 local 即可
    #下面第二个参数是应用名称,当连接到一个集群时,这个值可以帮助你在集群管理器的用户界面中找到你的应用。conf = SparkConf().setMaster("local").setAppName("My App")
    sc = SparkContext(conf= conf) #python 中打开获取 SparkContent 来创建 RDD
    nums = sc.parallelize([1,2,3,4])
    squared = nums.map(lambda x : x * x).collect()
    for num in squared:
      print "%i"%(num)
  • 上面执行完成后可以使用./bin/spark-submit useMap.py 来执行程序

更多 Spark 相关教程见以下内容

CentOS 7.0 下安装并配置 Spark  http://www.linuxidc.com/Linux/2015-08/122284.htm

Ubuntu 系统搭建单机 Spark 注意事项  http://www.linuxidc.com/Linux/2017-10/147220.htm

Spark1.0.0 部署指南 http://www.linuxidc.com/Linux/2014-07/104304.htm

Spark2.0 安装配置文档  http://www.linuxidc.com/Linux/2016-09/135352.htm

Spark 1.5、Hadoop 2.7 集群环境搭建  http://www.linuxidc.com/Linux/2016-09/135067.htm

Spark 官方文档 – 中文翻译  http://www.linuxidc.com/Linux/2016-04/130621.htm

CentOS 6.2(64 位)下安装 Spark0.8.0 详细记录 http://www.linuxidc.com/Linux/2014-06/102583.htm

Spark-2.2.0 安装和部署详解  http://www.linuxidc.com/Linux/2017-08/146215.htm

Spark2.0.2 Hadoop2.6.4 全分布式配置详解 http://www.linuxidc.com/Linux/2016-11/137367.htm

Ubuntu 14.04 LTS 安装 Spark 1.6.0(伪分布式)http://www.linuxidc.com/Linux/2016-03/129068.htm

Spark 的详细介绍:请点这里
Spark 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-10/147602.htm

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-01-21发表,共计3474字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中