好玩的大数据之23:Spark安装(Spark-3.0.0,伪分布式)

一、简介

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。

Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。

Spark 是在 Scala 语言中实现的,它将 Scala 用作其应用程序框架。与 Hadoop 不同,Spark 和 Scala 能够紧密集成,其中的 Scala 可以像操作本地集合对象一样轻松地操作分布式数据集。

尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。通过名为 Mesos 的第三方集群框架可以支持此行为。Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开发,可用来构建大型的、低延迟的数据分析应用程序。(摘自百度百科)

二、下载

            下载得到文件:spark-3.0.0-bin-hadoop3.2.tgz

        1.国内清华站点

https://mirrors.tuna.tsinghua.edu.cn/apache/找spark,然后找最新版本,当前是3.0.0

国内清华站点


spark3.0.0

        1.国外站点

            http://spark.apache.org/

spark网站


下载页面


选最新版本

    这个比清华站点好像更多一些文件

选带hadoop3.2版本

三、安装

       tar zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /mylab/soft/

四、配置

        1.修改环境变量

            修改~/.bashrc

                    vi ~/.bashrc

                            #hbase-2.3.0

                            export SPARK_HOME=$MYLAB_BASE_HOME/spark-3.0.0-bin-hadoop3.2

                            export PATH=$PATH:$SPARK_HOME/bin

                    source ~/.bashrc

        2.创建工作目录

                    mkdir -p $SPARK_HOME/working/eventlog

        3.配置参数文件

            a)spark-env.sh

                    cp $SPARK_HOME/spark-env.sh.template $SPARK_HOME/spark-env.sh

                    vi $SPARK_HOME/spark-env.sh

#添加这些内容

export JAVA_HOME=/mylab/soft/jdk1.8.0_251

export SCALA_HOME=/mylab/soft/scala-2.12.11

export HADOOP_HOME=/mylab/soft/hadoop-3.2.1

export HADOOP_CONF_DIR=/mylab/soft/hadoop-3.2.1/etc/hadoop

export SPARK_MASTER_HOST=master

export SPARK_MASTER_PORT=7077

            b)spark-defaults.conf

                    cp $SPARK_HOME/spark-defaults.conf.template $SPARK_HOME/spark-defaults.conf

                    vi $SPARK_HOME/spark-defaults.conf

spark.master=spark://master:7077

spark.eventLog.enabled=true

spark.eventLog.dir=file:///mylab/soft/spark3.0.0-hadoop3.2.1-hive2.3.7-others-new/working/eventlog

            c)slaves

                    cp $SPARK_HOME/slaves.template $SPARK_HOME/slaves

                    vi $SPARK_HOME/slaves                            

                            将最后一行的localhost改为master

            c)log4j.properties

cp $SPARK_HOME/log4j.properties.template $SPARK_HOME/log4j.properties

五、验证

     1)修改启动命令

                    由于spark和hadoop的启动/停止命令都叫start-all.sh和stop-all.sh,为了区别起见,将spark的启动命令改为start-spark-all.sh和stop-spark-.sh

                    mv $SPARK_HOME/sbin/start-all.sh $SPARK_HOME/sbin/start-spark-all.sh

                    mv $SPARK_HOME/sbin/stop-all.sh $SPARK_HOME/sbin/stop-spark-all.sh

      2)启动spark

            start-spark-all

            jps

jps

      3)启动spark shell

            spark-shell

            退出scala,输入:quit回车(含目号)

spark-shell

      3)Web UI

            http://master:4040

      6)启动spark SQL 

            配置

            建立至hive-site.xml的link

ln -s /mylab/soft/apache-hive-3.1.2-bin/conf/hive-site.xml /mylab/soft/spark-3.0.0-bin-hadoop3.2/conf/hive-site.xml

        建立至mysql-connector-java-8.0.21.jar的link

ln -s /usr/share/java/mysql-connector-java-8.0.21.jar $SPARK_HOME/jars/mysql-connector-java-8.0.21.jar

            hive-site.xml里面修改schema验证

    hive.metastore.schema.verification设置为false

    hive.metastore.schema.verification

    false

 

            再启动 spark-shell

          5)启动pyspark

                需要python2(安装如下)

                        sudo apt install python

                启动

                        pyspark建议使用3.6以上版本的python,不然会提示:

在python2上运行pyspark

将python2.7卸载掉

        sudo apt remove python2.7

        看看python3所在的位置

                which python3        (一般在/usr/bin/python3)

        做一个link

            sudo ln -s /usr/bin/python3 /usr/bin/python

        再启动pyspark

            pyspark

       6)停止spark

            stop-spark-all


六、参考


https://www.pianshen.com/article/71441048483/

hadoop3.2.1+hive3.1.2+scala2.12.10+spark3.0.0+zookeeper3.5.7+hbase2.0.6安装教程(亲测成功)

https://blog.csdn.net/weixin_45883933/article/details/106843035

WSL2-Ubuntu18.04 Linux环境下部署大数据开发测试环境

hadoop3.2.1+Hive3.1.2+HBase2.2.4+Phoenix5.0.0+Zookeeper3.6.1+Kylin3.0.2+Kafka2.5.0+Scala2.12+Spark3.0.0+Flink1.10.1+Tez0.10.1 ...

Using Spark's "Hadoop Free" Build

https://spark.apache.org/docs/latest/hadoop-provided.html#using-sparks-hadoop-free-build

你可能感兴趣的:(好玩的大数据之23:Spark安装(Spark-3.0.0,伪分布式))