Apache Spark是一个免费的开源集群计算框架,用于对大量数据进行分析,机器学习和图形处理。Spark随附80多个高级运算符,使您能够构建并行应用程序并从Scala,Python,R和SQL Shell交互使用它。它是专为数据科学而设计的快如闪电的内存中数据处理引擎。它提供了丰富的功能集,包括速度,容错,实时流处理,内存计算,高级分析等。
在本教程中,我们将向您展示如何在Debian 10服务器上安装Apache Spark。
先决条件
- 运行带有2 GB RAM的Debian 10的服务器。
- 在您的服务器上配置了root密码。
入门
开始之前,建议使用最新版本更新服务器。您可以使用以下命令更新它:
apt-get update -y
apt-get upgrade -y
更新服务器后,请重新启动服务器以实施更改。
安装Java
Apache Spark用Java语言编写。因此,您将需要在系统中安装Java。默认情况下,Debian 10默认存储库中提供了最新版本的Java。您可以使用以下命令进行安装:
apt-get install default-jdk -y
安装Java之后,使用以下命令验证Java的安装版本:
java --version
您应该获得以下输出:
openjdk 11.0.5 2019-10-15 OpenJDK Runtime Environment (build 11.0.5+10-post-Debian-1deb10u1) OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Debian-1deb10u1, mixed mode, sharing)
下载Apache Spark
首先,您需要从其官方网站下载最新版本的Apache Spark。在撰写本文时,Apache Spark的最新版本是3.0。您可以使用以下命令将其下载到/ opt目录:
cd /opt
wget http://apachemirror.wuchna.com/spark/spark-3.0.0-preview2/spark-3.0.0-preview2-bin-hadoop2.7.tgz
下载完成后,使用以下命令解压缩下载的文件:
tar -xvzf spark-3.0.0-preview2-bin-hadoop2.7.tgz
接下来,将提取的目录重命名为spark,如下所示:
mv spark-3.0.0-preview2-bin-hadoop2.7 spark
接下来,您将需要为Spark设置环境。您可以通过编辑〜/ .bashrc文件来实现:
nano ~/.bashrc
在文件末尾添加以下行:
export SPARK_HOME=/opt/spark export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
完成后保存并关闭文件。然后,使用以下命令激活环境:
source ~/.bashrc
启动主服务器
现在,您可以使用以下命令启动主服务器:
start-master.sh
您应该获得以下输出:
starting org.apache.spark.deploy.master.Master, logging to /opt/spark/logs/spark-root-org.apache.spark.deploy.master.Master-1-debian10.out
默认情况下,Apache Spark在端口8080上侦听。您可以使用以下命令进行验证:
netstat -ant | grep 8080
输出:
tcp6 0 0 :::8080 :::* LISTEN
现在,打开您的Web浏览器并输入URL http:// server-ip-address:8080。您应该看到以下页面:
请记下上图中的Spark URL“ spark:// debian10:7077 ”。这将用于启动Spark worker进程。
启动Spark Worker进程
现在,您可以使用以下命令启动Spark worker进程:
start-slave.sh spark://debian10:7077
您应该获得以下输出:
starting org.apache.spark.deploy.worker.Worker, logging to /opt/spark/logs/spark-root-org.apache.spark.deploy.worker.Worker-1-debian10.out
存取Spark Shell
Spark Shell是一个交互式环境,提供了一种简单的方法来学习API和以交互方式分析数据。您可以使用以下命令访问Spark Shell:
spark-shell
您应该看到以下输出:
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by org.apache.spark.unsafe.Platform (file:/opt/spark/jars/spark-unsafe_2.12-3.0.0-preview2.jar) to constructor java.nio.DirectByteBuffer(long,int) WARNING: Please consider reporting this to the maintainers of org.apache.spark.unsafe.Platform WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 19/12/29 15:53:11 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). Spark context Web UI available at http://debian10:4040 Spark context available as 'sc' (master = local[*], app id = local-1577634806690). Spark session available as 'spark'. Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 3.0.0-preview2 /_/ Using Scala version 2.12.10 (OpenJDK 64-Bit Server VM, Java 11.0.5) Type in expressions to have them evaluated. Type :help for more information. scala>
从这里,您可以学习如何快速方便地充分利用Apache Spark。
如果要停止Spark Master和Slave服务器,请运行以下命令:
stop-slave.sh
stop-master.sh
就是这样,您已经在Debian 10服务器上成功安装了Apache Spark。有关更多信息,请参阅Spark Doc上的Spark官方文档。
原文:https://www.howtoforge.com/how-to-install-apache-spark-on-debian-10/