精华内容
参与话题
问答
  • Spark安装和配置

    万次阅读 2015-10-22 07:13:32
    1 本文是在hadoop正确安装的前提的条件上进行的  Hadoop安装请参考:hadoop的安装和配置.docx 2 下载程序包 http://spark.apache.org/downloads.html ...3 安装spark (1) 将spark-1.5.1-bin-hadoop2.6.tgzpagz拖


    1  本文是在hadoop正确安装的前提的条件上进行的

     Hadoop安装请参考:hadoop的安装和配置.docx(http://blog.csdn.net/tian_li/article/details/49103603)

    2  下载程序包

    http://spark.apache.org/downloads.html

    我们使用的是:spark-1.5.1-bin-hadoop2.6.tgz

    3  安装spark

    (1) 将spark-1.5.1-bin-hadoop2.6.tgzpagz拖拽到ubuntu桌面


    (2) mkdir /usr/local/spark #在/usr/local/中创建spark目录用来存放程序文件

    (3) cp –rf Desktop/spark-1.5.1-bin-hadoop2.6.tgz /usr/local/spark 将spark的安装包拷贝到(2)中新建的目录下


    (4) 解压/usr/local/spark下的安装包 并删除安装包



    4  配置环境变量

    (1) 在/etc/profile中添加SPARK_HOME并且把spark的bin目录添加进环境变量


    (2) 使配置文件生效


    (3) 使用scp 将/etc/profile发送到slave1和slave2上

    scp /etc/profile root@slave1:/etc/profile

    scp /etc/profile root@slave2:/etc/profile


    并且在slave1和slave2上执行:source /etc/profile使配置生效

    (4) 配置spark的spark-env.sh文件

    1)  进入spark的conf目录:

    cd /usr/local/spark/spark-1.5.1-bin-hadoop2.6/conf

    2)  备份spark的配置文件spark-env.sh.template

    cp –rfspark-env.sh.template spark-env.sh


    3)  在spark-env.sh添加如下配置信息

    exportJAVA_HOME=/usr/local/java/jdk1.7.0_80 #jdk安装目录

    export SCALA_HOME=/usr/local/scala/scala-2.11.7#scala安装目录

    exportSPARK_MASTER_IP=192.168.189.130 #spark集群的master节点

    exportSPARK_WORKER_MEMORY=1.5g#指定的work节点能够最大分配给#Executors的内存大小,因为虚拟机就分了2G,所以这里给spark1.5g

    export HADOOP_CONF_DIR=/usr/local/hadoop/hadoop-2.7.1/etc/hadoop

    #指定Hadoop集群的配置文件目录,保存退出.


    (5) 配置conf下的slaves文件

     创建文件slaves

    cp –rf slaves.template slaves


    添加如下配置信息:

    master

    slave1

    slave2


    把三台机器设置为Worker,主节点既是master又是worker节点。

    (6) 通过scp命令把spark的配置分发到slave1和slave2上

     

    5  启动spark集群

    先启动hadoop集群

    进入/usr/local/spark/spark-1.5.1-bin-hadoop2.6/sbin目录执行:./start-all.sh 注意使用./start-all.sh而不是start-all.sh因为我们已经把hadoop中的start-all.sh的已经添加进环境变量中。

    可以看到master节点:多了master进程和worker进程

            slave1和slave2 :多了worker进程

    master:


    Slave:


    6  测试spark

    6.1 进入web页面查看

    http://192.168.189.130:8080/


    环境的配置信息如下:


    6.2 进入spark的bin目录,使用spark-shell控制台






    http://192.168.189.130:4040/jobs/


    6.3 将安装spark安装目录README.MD复制到HDFS系统上


    从web控制台查看文件是否已经成功上传控制台:


    6.4 编写代码操作上传的README.md文件

    sc是SparkContext的实例,在启动spark-shell的时候系统自动生成,SparkContext是把代码提交到集群或者本地的通道,编写spark代码,无论是要运行本地还是集群都必须有SparkContext的实例.


    (1) 读取README.md文件


    (2) 从文件中过滤出所有Spark这个词


    (3) 统计Spark一共出现了多少次




    可以看出Spark一共出现了18次.

    (4) 查看spark shell的web控制台


    控制台上出现了一个提交任务,并且成功完成


    (5) 验证spark的计算结果

    使用ubuntu的wc功能统计单词出现次数

    grep Spark README.md|wc


    可以看出执行结果也是18次.


    展开全文
  • 安装spark的详细步骤

    万次阅读 2018-08-07 16:22:35
    1.下载spark的地址 http://spark.apache.org/downloads.html 2.把下载好的压缩包拖拽到虚拟机的桌面 3.把压缩包移动到/opt目录下 mv spark-2.3.1-bin-hadoop2.7.tgz /opt 4. 解压 tar -zxvf spark-2.3.1-bin...

    1.下载spark的地址
    http://spark.apache.org/downloads.html

    2.把下载好的压缩包拖拽到虚拟机的桌面

    3.把压缩包移动到/opt目录下
    mv spark-2.3.1-bin-hadoop2.7.tgz /opt
    4. 解压
    tar -zxvf spark-2.3.1-bin-hadoop2.7.tgz

    5 .目录切换到 /opt/spark-2.3.1-bin-hadoop2.7.tgz /conf 文件夹下边
    这里写图片描述
    6.Spark的配置文件都在这个文件夹里边 在修改配置文件之前,查看文件夹权限
    这里写图片描述
    修改用户组
    这里写图片描述
    修改文件夹权限
    这里写图片描述

    之后开始修改配置文件 ,进入到conf 文件夹输入
    cd spark-env.sh.template spark-env.sh
    复制 spark-env.sh.template 文件夹并改名为 spark-env.sh
    这里写图片描述
    编辑spark-env.sh 文件 添加以下内容:
    这里写图片描述
    配置完成后 进入sbin目录并查看

    这里写图片描述
    输入./start-all.sh启动spark进程
    之后输入jps 查看进程
    Master和worker是spark的进程 剩下的几个是hadoop的进程
    所有只要有Master和Worker这两个进程 就说明Spark已经被启动了
    这里写图片描述
    之后进入spark的bin目录查看
    这里写图片描述
    之后输入 ./pyspark 命令 出现此画面说明正常启动
    这里写图片描述

    展开全文
  • Spark——安装及使用

    2019-10-23 11:20:10
    一、spark入门与安装 1、spark概述 1)了解 Spark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。...

    一、spark入门与安装

    1、spark概述

    1)了解

    Spark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。目前,Spark生态系统已经发展成为一个包含多个子项目的集合,其中包含SparkSQL、Spark Streaming、GraphX、MLlib等子项目,Spark是基于内存计算的大数据并行计算框架。Spark基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark部署在大量廉价硬件之上,形成集群。

    2)原理

    中间结果输出: 基于MapReduce的计算引擎通常会将中间结果输出到磁盘上,进行存储和容错。出于任务管道承接的,考虑,当一些查询翻译到MapReduce任务时,往往会产生多个Stage,而这些串联的Stage又依赖于底层文件系统(如HDFS)来存储每一个Stage的输出结果
    在这里插入图片描述
    Spark是MapReduce的替代方案,而且兼容HDFS、Hive,可融入Hadoop的生态系统,以弥补MapReduce的不足。

    3)特点

    ① 快

    与Hadoop的MapReduce相比,Spark基于内存的运算要快100倍以上,基于硬盘的运算也要快10倍以上。Spark实现了高效的DAG执行引擎,可以通过基于内存来高效处理数据流。
    在这里插入图片描述

    ② 易用

    Spark支持Java、Python和Scala的API,还支持超过80种高级算法,使用户可以快速构建不同的应用。而且Spark支持交互式的Python和Scala的shell,可以非常方便地在这些shell中使用Spark集群来验证解决问题的方法
    在这里插入图片描述

    ③ 通用

    Spark提供了统一的解决方案。Spark可以用于批处理、交互式查询(Spark SQL)、实时流处理(Spark Streaming)、机器学习(Spark MLlib)和图计算(GraphX)。这些不同类型的处理都可以在同一个应用中无缝使用。Spark统一的解决方案非常具有吸引力,毕竟任何公司都想用统一的平台去处理遇到的问题,减少开发和维护的人力成本和部署平台的物力成本。

    ⑤ 兼容性

    Spark可以非常方便地与其他的开源产品进行融合。比如,Spark可以使用Hadoop的YARN和Apache Mesos作为它的资源管理和调度器,器,并且可以处理所有Hadoop支持的数据,包括HDFS、HBase和Cassandra等。这对于已经部署Hadoop集群的用户特别重要,因为不需要做任何数据迁移就可以使用Spark的强大处理能力。Spark也可以不依赖于第三方的资源管理和调度器,它实现了Standalone作为其内置的资源管理和调度框架,这样进一步降低了Spark的使用门槛,使得所有人都可以非常容易地部署和使用Spark。此外,Spark还提供了在EC2上部署Standalone的Spark集群的工具。
    在这里插入图片描述

    2、spark集群安装

    1)安装

    ① 机器避暑

    准备两台以上Linux服务器,安装好JDK

    ② 下载Spark安装包

    在这里插入图片描述
    上传spark-安装包到Linux上
    解压安装包到指定位置

    [root@node01 ~]# cd /home/hadoop/apps/
    [root@node01 apps]# rz
    [root@node01 apps]# tar -zxvf spark-1.5.1-bin-hadoop2.4/
    
    ③ 配置spark
    //进入conf目录并重命名并修改spark-env.sh.template文件
    [root@node01 apps]# cd spark-1.5.1-bin-hadoop2.4/conf/
    [root@node01 apps]# mv spark-env.sh.template spark-env.sh
    [root@node01 apps]# vi spark-env.sh
    
    //在该配置文件中添加如下配置:
    export JAVA_HOME=/home/hadoop/apps/jdk1.8.0_181
    export SPARK_MASTER_IP=node01
    export SPARK_MASTER_PORT=7077
    
    //重命名并修改slaves.template文件
    [root@node01 apps]# mv slaves.template slaves
    [root@node01 apps]# vi slaves
    
    //在该文件中添加子节点所在的位置(Worker节点):
    node01
    node02
    node03
    
    //将配置好的Spark拷贝到其他节点上
    [root@node01 apps]# scp -r spark-1.5.1-bin-hadoop2.4/ node02:/home/hadoop/apps/
    [root@node01 apps]# scp -r spark-1.5.1-bin-hadoop2.4/ node03:/home/hadoop/apps/
    
    //Spark集群配置完毕,目前是1个Master,3个Work,在hadoop1上启动Spark集群
    [root@node01 apps]# /home/hadoop/apps/spark-1.5.1-bin-hadoop2.4/sbin/start-all.sh
    [root@node01 apps]# jps
    //主节点上有Master进程,其他子节点上有Work进行,登录Spark管理界面查看集群状态(主节点):http://hadoop1:8080/
    

    到此为止,Spark集群安装完毕,但是有一个很大的问题,那就是Master节点存在单点故障,要解决此问题,就要借助zookeeper,并且启动至少两个Master节点来实现高可靠,配置方式比较简单
    Spark集群规划:hadoop1,hadoop2是Master;hadoop3,hadoop4,hadoop5是Worker
    安装配置zk集群,并启动zk集群

    //停止spark所有服务,修改配置文件spark-env.sh
    [root@node01 apps]# /home/hadoop/apps/spark-1.5.1-bin-hadoop2.4/sbin/stop-all.sh
    [root@node01 apps]# vi spark-env.sh
    
    //在该配置文件中删掉SPARK_MASTER_IP并添加如下配置
    export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=zk1,zk2,zk3 -Dspark.deploy.zookeeper.dir=/spark"
    
    //在hadoop1上执行sbin/start-all.sh脚本,然后在hadoop2上执行sbin/start-master.sh启动第二个Master
    [root@node01 apps]# /home/hadoop/apps/spark-1.5.1-bin-hadoop2.4/sbin/start-all.sh
    [root@node02 apps]# /home/hadoop/apps/spark-1.5.1-bin-hadoop2.4/sbin/start-Master.sh
    

    3、执行spark程序

    1)执行第一个spark程序

    /usr/local/spark-1.5.1-bin-hadoop2.4/bin/spark-submit \
    --class org.apache.spark.examples.SparkPi \
    --master spark://hadoop1:7077 \
    --executor-memory 1G \
    --total-executor-cores 2 \
    /usr/local/spark-1.5.1-bin-hadoop2.4/lib/spark-examples-1.5.1-hadoop2.4.0.jar \
    100
    //该算法是利用蒙特·卡罗算法求PI
    

    2)启动Spark Shell

    spark-shell是Spark自带的交互式Shell程序,方便用户进行交互式编程,用户可以在该命令行下用scala编写spark程序

    //启动spark shell
    /usr/local/spark-1.5.1-bin-hadoop2.4/bin/spark-shell \
    --master spark://hadoop1:7077 \
    --executor-memory 2g \
    --total-executor-cores 2
    
    //参数说明:
    --master spark://hadoop1:7077 		//指定Master的地址
    --executor-memory 2g 				//指定每个worker可用内存为2G
    --total-executor-cores 2 			//指定整个集群使用的cup核数为2个
    

    注意:

    • 如果启动spark shell时没有指定master地址,但是也可以正常启动spark shell和执行spark shell中的程序,其实是启动了spark的local模式,该模式仅在本机启动一个进程,没有与集群建立联系。

    • Spark Shell中已经默认将SparkContext类初始化为对象sc。用户代码如果需要用到,则直接应用sc即可

    在spark shell中编写WordCount程序
    1.首先启动hdfs
    2.向hdfs上传一个文件到hdfs://hadoop1:9000/words.txt
    3.在spark shell中用scala语言编写spark程序

    sc.textFile("hdfs://hadoop1:9000/words.txt").flatMap(_.split(" "))
    .map((_,1)).reduceByKey(_+_).saveAsTextFile("hdfs://hadoop1:9000/out")
    

    4.使用hdfs命令查看结果

    hdfs dfs -ls hdfs://hadoop1:9000/out/p*
    

    说明:

    sc											SparkContext对象,该对象时提交spark程序的入口
    textFile(hdfs://hadoop1:9000/words.txt)		hdfs中读取数据
    flatMap(_.split(" "))						先map在压平
    map((_,1))									将单词和1构成元组
    reduceByKey(_+_)							按照key进行reduce,并将value累加
    saveAsTextFile("hdfs://hadoop1:9000/out")	将结果写入到hdfs中
    

    4、在IDEA中编写WordCount程序

    • spark shell仅在测试和验证我们的程序时使用的较多,在生产环境中,通常会在IDE中编制程序,然后打成jar包,然后提交到集群,最常用的是创建一个Maven项目,利用Maven来管理jar包的依赖。
      1.创建一个项目
      2.选择Maven项目,然后点击next
      3.填写maven的GAV,然后点击next
      4.填写项目名称,然后点击finish
      5.创建好maven项目后,点击Enable Auto-Import
      6.配置Maven的pom.xml
      7.新建一个scala class,类型为Object
      8.编写spark程序
      9.使用Maven打包:
      首先修改pom.xml中的main class
      点击idea右侧的Maven Project选项
      点击Lifecycle,选择clean和package,然后点击Run Maven Build
      10.选择编译成功的jar包,并将该jar上传到Spark集群中的某个节点上
      11.首先启动hdfs和Spark集群
      启动hdfs
    /usr/local/hadoop-2.6.5/sbin/start-dfs.sh
    

    启动spark

    /usr/local/spark-2.1.0-bin-hadoop2.6/sbin/start-all.sh
    

    12.使用spark-submit命令提交Spark应用(注意参数的顺序)

    /usr/local/spark-2.1.0-bin-hadoop2.6/bin/spark-submit \
    --class cn.itcast.spark.WordCount \
    --master spark://hadoop1:7077 \
    --executor-memory 2G \
    --total-executor-cores 4 \
    /root/spark-mvn-1.0-SNAPSHOT.jar \
    hdfs://hadoop1:9000/words.txt \
    hdfs://hadoop1:9000/out
    

    查看程序执行结果

    hdfs dfs -cat hdfs://hadoop1:9000/out/part-00000
    

    //测试IDEA编写的程序
    ./spark-submit
    –master spark://hdp01:7077
    –executor-memory 512m
    –total-executor-cores 4
    –calss cn.lixiaolong.ScalaWC
    /root/SparkDemo-1.0-SNAPSHOT.jar
    hdfs://hdp01:9000/wc/a.txt \

    hdfs:?/hdp01:9000/wc/scalaWCOut

    ./spark-submit --master spark://hsp01:7077 --executor-memory 512m --total-executor-cores 4 --class cn.lixiaolong.JavaLambdaWC /root/SparkDemo-1.0-SNAPSHOT.jar hdfs://hdp01:9000/wc/a.txt hdfs://hdp01:9000/wc/lambdaout

    二、在idea中添加指定的scala版本

    在spark1.5.1版本中需要的是scala的2.10.4版本,之前在windows中安装的是scala的2.12.7,此时我们需要在idea中安装需要的sdk版本
    首先在scala的官网下载scala的2.10.4版本
    Scala官网:https://www.scala-lang.org/download/
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    下载之后解压,然后打开idea

    1、新建一个项目

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    2、添加scala的2.10.4版本

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    3、下载相关插件

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    添加如下内容

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0</modelVersion>
    
        <groupId>cn.spark</groupId>
        <artifactId>spark-java-study</artifactId>
        <version>1.0-SNAPSHOT</version>
        <packaging>jar</packaging>
    
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.1</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-core_2.10</artifactId>
                <version>1.5.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-sql_2.10</artifactId>
                <version>1.5.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-hive_2.10</artifactId>
                <version>1.5.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-streaming_2.10</artifactId>
                <version>1.5.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-client</artifactId>
                <version>2.4.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-streaming-kafka_2.10</artifactId>
                <version>1.5.1</version>
            </dependency>
        </dependencies>
    
        <build>
            <sourceDirectory>src/main/java</sourceDirectory>
            <testSourceDirectory>src/test</testSourceDirectory>
    
            <plugins>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <configuration>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                        <archive>
                            <manifest>
                                <mainClass></mainClass>
                            </manifest>
                        </archive>
                    </configuration>
                    <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                            <goals>
                                <goal>single</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
    
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.2.1</version>
                    <executions>
                        <execution>
                            <goals>
                                <goal>exec</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <executable>java</executable>
                        <includeProjectDependencies>true</includeProjectDependencies>
                        <includePluginDependencies>false</includePluginDependencies>
                        <classpathScope>compile</classpathScope>
                        <mainClass>cn.spark.study.core.WordCountCluster_5</mainClass>
                    </configuration>
                </plugin>
    
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                    </configuration>
                </plugin>
    
            </plugins>
    
        </build>
    
    
    </project>
    

    如图:
    在这里插入图片描述
    下载
    在这里插入图片描述

    4、

    在这里插入图片描述
    图中src为灰色
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • Spark安装和配置

    万次阅读 2016-03-18 16:06:17
    http://blog.csdn.net/pipisorry/article/details/50924395安装HadoopSpark默认使用HDFS充当...spark单机环境安装{linux下的安装,windows上也类似}安装jdk依赖[java环境配置:安装jdk]下载spark相应hadoop2.*版本选择

    http://blog.csdn.net/pipisorry/article/details/50924395

    安装Hadoop

    Spark默认使用HDFS充当持久化层,所以需要安装Hadoop,当然也可以不安装。

    最好下载和spark对应的版本。



    spark单机环境安装

    {linux下的安装,windows上也类似}

    安装jdk依赖

    [java环境配置:安装jdk]

    下载spark相应hadoop2.*版本

    选择Spark最新发布版,一个预构建的Hadoop 2.*包,直接下载。

    Download Apache Spark™

    选择mirror下载,第二个下载链接较快

    ~/ENV$ wget http://mirror.bit.edu.cn/apache/spark/spark-2.0.0/spark-2.0.0-bin-hadoop2.7.tgz

    解压到要解压的目录,如/opt

    $sudo tar -xvf /media/pika/softwares/Downloads/LinuxInstalls/spark-1.6.1-bin-hadoop2.6.tgz -C /opt

    这样就可以在/opt/spark-1.6.1-bin-hadoop2.6目录下通过$./bin/spark-shell 或者$./bin/pyspark使用spark了。不过可以配置一下更好用:

    spark配置

    创建指向该Spark版本的符号链接到spark目录。这样你可以简单地下载新/旧版本的Spark,然后修改链接来管理Spark版本,而不用更改路径或环境变量。
    pika:~$sudo ln -s /opt/spark-1.6.1-bin-hadoop2.6 /opt/spark
    修改BASH配置,将Spark添加到PATH中,设置SPARK_HOME环境变量,这样就可以直接在命令行上执行spark命令了。
    Ubuntu上,编辑~/.profile 或 ~/.bash_profile文件   Note: ~/.profile is not read by bash(1), if ~/.bash_profile or ~/.bash_login exists.

    pika:~$vi .profile
    pika:~$sudo vi /etc/environment #修改这个也可以,不过是全局的不好

    ~$ vi ~/.bashrc    #自己用的话就个人设置吧

    将以下语句添加到文件中PATH的上面一行中:

    export SPARK_HOME=/opt/spark

    将pyspark的python版本指向python3

    export PYSPARK_PYTHON=python3

    将下面的语句加入到PATH中
    # added by Anaconda3 4.1.1 installer
    export PATH="/home/piting/ENV/anaconda3/bin:$PATH"
    export PATH="$SPARK_HOME/bin:$PATH"

    ps: if you want to run in in IPython Notebook, write:
    PYSPARK_PYTHON=python3 PYSPARK_DRIVER_PYTHON=ipython3 PYSPARK_DRIVER_PYTHON_OPTS="notebook" ./bin/pyspark    #当然这是要安装的

    [Apache Spark: How to use pyspark with Python 3]

    出错处理:

    Exception: Python in worker has different version 2.7 than that in driver 3.5, PySpark cannot run with different minor versions

    Exception: Python in worker has different version 3.4 than that in driver 3.5, PySpark cannot run with different minor versions

    解决

    PYSPARK_PYTHON = /home/piting/ENV/anaconda3/bin/python
    os.environ["PYSPARK_PYTHON"] = PYSPARK_PYTHON

    driver对应的python版本就是SPARK_PYTHONPATH设置的

    worker对应的python版本就是PYSPARK_PYTHON设置的

    有时如果你使用的是虚拟环境或者anaconda,不能直接设置export PYSPARK_PYTHON=python3,这样可能直接指向的是系统全局的设置,而不是当前用户的。

    修改.bashrc只要. .bashrc就立刻生效。

    修改生效pika:~$. /etc/environment,只是在root用户下当前命令窗口生效,总是生效要重启。

    启动spark

    $spark-shell   #启动scala spark

    $pyspark  #启动python spark

    PS:本博客是根据《spark机器学习》学习后记录的笔记。书代码及勘误[CODE DOWNLOADS & ERRATA],填写好邮箱等就会发送给你了,lz:其实就是这个地址http://www.packtpub.com/code_download/17400,另[《Machine Learning with Spark》书评与作者访谈]。

    简略Spark输出

    Spark(和PySpark)的执行可以特别详细,很多INFO日志消息都会打印到屏幕。开发过程中,这些非常恼人,因为可能丢失Python栈跟踪或者print的输出。为了减少Spark输出 – 你可以设置$SPARK_HOME/conf下的log4j。

    首先,拷贝一份$SPARK_HOME/conf/log4j.properties.template文件,去掉“.template”扩展名。
    $sudo cp $SPARK_HOME/conf/log4j.properties.template $SPARK_HOME/conf/log4j.properties

    编辑新文件,用WARN替换代码中出现的INFO。你的log4j.properties文件类似:
    # Set everything to be logged to the console
     19 log4j.rootCategory=WARN, console
     20 log4j.appender.console=org.apache.log4j.ConsoleAppender
     21 log4j.appender.console.target=System.err
     22 log4j.appender.console.layout=org.apache.log4j.PatternLayout
     23 log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
     24 
     25 # Settings to quiet third party logs that are too verbose
     26 log4j.logger.org.spark-project.jetty=WARN
     27 log4j.logger.org.spark-project.jetty.util.component.AbstractLifeCycle=ERROR
     28 log4j.logger.org.apache.spark.repl.SparkIMain$exprTyper=WARN
     29 log4j.logger.org.apache.spark.repl.SparkILoop$SparkILoopInterpreter=WARN
     30 log4j.logger.org.apache.parquet=ERROR
     31 log4j.logger.parquet=ERROR
     32 
     33 # SPARK-9183: Settings to avoid annoying messages when looking up nonexistent UDFs in       SparkSQL with Hive support
     34 log4j.logger.org.apache.hadoop.hive.metastore.RetryingHMSHandler=FATAL
     35 log4j.logger.org.apache.hadoop.hive.ql.exec.FunctionRegistry=ERROR
    现在运行PySpark,输出消息将会更简略!

    [spark快速入门之最简配置 spark 1.5.2 hadoop 2.7 配置]

    皮皮blog



    Spark分布式集群环境搭建

    [Spark分布式集群环境搭建]

    皮皮blog



    pycharm中配置pyspark

    pycharm中使用pyspark

    python安装py4j

    pip install py4j

    pycharm中配置python开发环境

    其实只需要在代码中加入下面语句就可以了,这样就不用配置pycharm了,免得换一个IDE还是会出错(主要原因还是因为系统的spark环境没配置好,如使用ssh远程登录时可能没执行spark配置的环境文件)。如果报错:ImportError: No module named 'SocialNetworks'通过加入下面的代码就可以解决。

    SPARK_HOME = /home/piting/ENV/spark
    PYSPARK_PYTHON = /home/piting/ENV/anaconda3/bin/python
    SPARK_LOCAL_IP = 192.168.0.172

    # spark environment settingsos.environ['SPARK_HOME'] = conf.get(SECTION, 'SPARK_HOME')
    # Path for pyspark and py4j
    sys.path.append(os.path.join(conf.get(SECTION, 'SPARK_HOME'), 'python'))
    # sys.path.append("/home/piting/ENV/spark/python/lib/py4j-0.10.1-src.zip")
     os.environ["PYSPARK_PYTHON"] = conf.get(SECTION, 'PYSPARK_PYTHON')
    # You might need to enter your local IP
     os.environ['SPARK_LOCAL_IP'] = conf.get(SECTION, 'SPARK_LOCAL_IP')
    from pyspark import SparkContext

    [如何使用PyCharm编写Spark程序(pyspark) ]

    Note: 如果配置了下面的PyCharm里面配置第三方库的代码自动提示,包含了语句sys.path.append("/home/piting/ENV/spark/python")的效果。


    或者也可以这样(局部设置)

    在项目Project的要运行的python代码运行配置中选择“Run” ->“Edit Configurations” ->“Environment variables”“Configurations” ->“Environment variables”增加SPARK_HOME目录与PYTHONPATH目录。 

    SPARK_HOME:Spark安装目录; PYTHONPATH:Spark安装目录下的Python目录


    测试一下是否成功,DataAnalysis.py:

    from pyspark import SparkContext
    sc = SparkContext("local[4]", "tianchi data analysis")
    songs_data = sc.textFile(r"/media/pika/files/machine_learning/RecSys/Tianchi/mars_tianchi_songs.csv")
    print(songs_data.first())

    Note: 也可以使用spark-submit命令来运行py代码: $ spark-submit DataAnalysis.py

    输出类似下面内容就成功了(print输出正确就OK了):


    [使用PyCharm配置Spark的Python开发环境(基础)]

    [importing pyspark in python shell]


    PyCharm里面配置第三方库的代码自动提示

    按照上面配置好pycharm后,在pycharm中from pyspark import SparkContext会出现红色波浪线,这样就不能在输入代码时候自动提示。

    或者py 文件可以运行,无 Bug,不过写了import pyspark之后或者类似下面这句话导入,对应的还是有红色波浪线,其实是可以正常运行的,只是 PyCharm提示错误:from pyspark import SparkContext   Unresolved reference pyspark, SparkContext . Updated generator3.py script function isCallable to handle failure to retrieve '__call__' attribute.[Unresolved reference in PyQt for QtGui module]

    需要如下配置第三方库代码的自动提示

    点击最右边下面的interpreter paths按钮添加SPARK_PYTHON路径如/opt/spark/python

    [To enable IDE (PyCharm) syntax support for Apache Spark]

    from: http://blog.csdn.net/pipisorry/article/details/50924395

    ref: [安装Hadoop及Spark(Ubuntu 16.04)]

    [《Spark 官方文档》Spark配置]

    展开全文
  • spark安装具体步骤

    千次阅读 2016-08-23 09:47:41
    最近,在大波面试来袭的时候,我默默的在这钻研spark安装,以前的linux的基础知识都忘得差不多了,所以安装起来比较麻烦,于是写下这篇安装博文,希望有用。
  • CDH5.14.4离线安装Spark2.2.0详细步骤

    千次阅读 2019-03-19 11:48:22
    经查阅官方文档,发现spark1.6和2.x是可以并行安装的,也就是说可以不用删除默认的1.6版本,可以直接安装2.x版本,它们各自用的端口也是不一样的。这里做一下安装spark2.1版本的步骤记录。 二、安装准备 csd包:...
  • spark 安装部署与介绍

    千次阅读 2019-10-09 07:56:54
    Spark安装四. Spark部署模式1、单机本地模式(Spark所有进程都运行在一台机器的JVM中)2、伪分布式模式 (在一台机器中模拟集群运行,相关的进程在同一台机器上)。3、分布式模式包括:Spark自带的 Standalone、Yarn...
  • Spark安装

    2020-11-22 21:12:43
    Spark安装 1、下载并上传scala安装包至linux的software目录下 2、解压安装包至/opt目录下,重命名Scala tar -zxvf scala-2.11.12.tgz -C /opt/ cd /opt/ mv scala-2.11.12/ scala 3、修改环境变量 vi /etc/...
  • Spark 安装前言一、下载、安装、配置二、运行Spark总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了...
  • spark安装和使用

    万次阅读 多人点赞 2016-08-29 18:01:03
    spark最近出了2.0版本,其安装和使用也发生了些许的变化。笔者的环境为:centos7. 该文章主要是讲述了在centos7上搭建spark2.0的具体操作和spark的简单使用,希望可以给刚刚接触spark的朋友一些帮助。 按照惯例,...
  • spark安装详细步骤

    2020-10-30 14:56:00
    1.下载spark地址 http://spark.apache.org/downloads.html 2.把下载好的压缩包拖拽到虚拟机的software(自己建的)目录下 ...4.进入opt目录里面将安装好的spark改名 cd /opt mv spark-2.4.5-bin-hadoop2.6 spark245 5.
  • spark踩坑记——windows环境下spark安装和运行

    万次阅读 多人点赞 2018-08-10 17:08:10
    本文主要记录windows系统上安装spark,scala,和intelj IDEA,并实现本地spark运行。同时介绍了利用maven构建工具对spark工程构建的方法。本地运行需要本地安装scala,spark,hadoop。而如果利用maven构建工具则只...
  • spark安装步骤详解

    2018-04-13 14:07:01
    spark安装步骤详解;spark安装步骤详解;spark安装步骤详解;spark安装步骤详解;spark安装步骤详解;spark安装步骤详解;spark安装步骤详解;spark安装步骤详解
  • 自制Spark安装详细过程(含Scala)

    千次阅读 2018-09-18 09:12:42
    推荐spark安装链接http://blog.csdn.net/weixin_36394852/article/details/76030317 一、scala下载安装与配置  1.下载  cd /usr/scala //若不存在则新建  wget https://downloads.lightb...
  • IDEA安装Spark

    千次阅读 2019-06-06 13:17:18
    IDEA安装Spark 两种方式: 从本地安装的Spark中导入jar包,File - Project Structure - Libraies - "+" - java - 选择spark目录下jars文件夹 通过Maven添加pom依赖 本地安装演示: pom添加演示: 图文步骤...
  • 【Hadoop/Spark】Hadoop、Spark安装详解

    千次阅读 2017-10-24 21:33:36
    Hadoop、Spark安装详解
  • Linux 安装spark教程

    2020-08-11 20:09:27
    Linux Spark的安装教程安装JDK安装Scala安装Spark 安装JDK 下载JDK: jdk-8u152-linux-x64.tar.gz 链接: https://pan.baidu.com/s/1d1lEELsUrXAQ–sf_PDBtg 提取码: ib5x 解压 : jdk-8u152-linux-x64.tar.gz 可以...
  • Windows10 下安装spark单机版

    千次阅读 2019-03-01 12:03:11
    如同往常一样安装spark也出了很多问题,好在一上午终于搞定 spark 基于java,所以首先检查java是否安装,注意java安装路径最好不要出现空格,虽然网上也有解决方法,但是我的机器上没有解决问题。 一 检查java...
  • Linux下安装Spark

    千次阅读 2019-04-02 16:11:18
    目录Linux下安装Spark先安装jdk下载spark-2.4.0-bin-hadoop2.7安装配置配置spark-env.sh配置slaves启动&停止访问 Linux下安装Spark 先安装jdk 下载spark-2.4.0-bin-hadoop2.7 安装 cd /opt mkdir spark cd spark...
  • Ubuntu 16.04 Spark安装

    千次阅读 2017-10-09 12:30:53
    Spark安装步骤:1:需要安装jdk,并配置环境变量2:安装Scala,并配置环境变量3:安装Spark,配置所要用的Python版本1.安装JDK首先来安装JDK: sudo mkdir /usr/lib/jdk在/usr/lib/目录下创建jdk文件夹,我们计划讲...
  • centos安装spark

    千次阅读 2019-06-16 23:27:15
    使用的环境是centos7.2,已经安装了jdk 1.8 和hadoop2.7.1,三个服务器节点master,salve1,slave2 1、安装scala 1)下载scala 下载地址 https://www.scala-lang.org/download/ 我这里下载了scale 2.11版本 ...
  • Centos系统安装spark单机版

    千次阅读 2018-02-22 11:09:21
    1, 配置JAVA_HOME通过yum等方式,可以安装最新的java版本(yum install java)。安装完java后,我们需要配置JAVA_HOME,首先要确定jdk安装的位置:[root@bogon marshall]# which java /usr/bin/java[root@bogon ...
  • Spark安装-ubuntu 18.04下安装

    千次阅读 2019-06-26 14:28:42
    安装spark之前,首先需要安装配置Hadoop,这个就不做详细介绍了,可以参看另一篇: https://blog.csdn.net/weixin_42001089/article/details/81865101 本文参考:...
  • Mac安装Spark

    2020-02-25 16:26:56
    安装scala brew install scala scala -version 配置环境变量 export SCALA_HOME=/usr/local/Cellar/scala-2.13.1 ...安装spark brew install spark 配置环境变量 export SPARK_HOME=/usr/loca...
  • CentOS6.5安装spark

    2019-05-05 22:23:25
    安装spark包 1、将spark-1.3.0-bin-hadoop2.4.tgz使用WinSCP上传到/usr/local目录下。 2、解压缩spark包:tar zxvf spark-1.3.0-bin-hadoop2.4.tgz。 3、更改spark目录名:mv spark-1.3.0-bin-hadoop2.4 spark 4...
  • Spark 安装配置实验

    千次阅读 2016-03-21 15:19:30
    安装前准备 hadoop 2.7.2 安装配置,参考 ... 安装spark 1. 下载spark安装包,地址:http://spark.apache.org/downloads.html 下载页面如图1所示 图1 2. 解压缩 tar -zxvf spark-1.6.0
  • Windows下安装spark+Hadoop

    千次阅读 2018-08-08 15:47:00
    Spark作为一个基于内存的开源计算框架,在这个大数据时代背景下,受到越来越多的开发者的喜爱,相对于... 了解Spark的都知道Spark是用Scala写的,那么要想在windows下来运行Spark少不了的就要先安装Scala。 首先的...
  • Spark 安装

    2017-07-04 10:02:56
    因此,最好是基于Linux系统安装Spark 。下列步骤显示如何安装Apache Spark。 第1步:验证安装Java 安装Java是安装Spark强制性的事情之一。 试试下面的命令来验证Java版本。 $java -version 如果...
  • Ubuntu系统中安装Spark

    千次阅读 2019-04-23 22:15:25
    安装spark 步骤 1、解压到/usr/local目录下:sudo tar -zxf ~/software/spark-2.1.0-bin-without-hadoop.tgz -C /usr/local/ 2、进入local 目录 :cd /usr/local 3、将文件名改为 spark:sudo mv ./spark-2.1.0-...
  • ubuntu18.04安装spark(伪分布式)

    千次阅读 2018-09-05 18:40:55
    安装spark之前,首先需要安装配置Hadoop,这个就不做详细介绍了,可以参看博主的另一篇: https://blog.csdn.net/weixin_42001089/article/details/81865101 ##################################################...

空空如也

1 2 3 4 5 ... 20
收藏数 49,373
精华内容 19,749
关键字:

spark安装