如何查看Spark版本
How to check the Spark version
如题,如何知道CentOS安装了哪个版本的spark?
当前系统已安装cdh5.1.0。
如果您使用 Spark-Shell,它会出现在开始的横幅中。
以编程方式,可以使用 SparkContext.version
。
打开 Spark shell 终端,运行 sc.version
您使用 spark-shell 或 pyspark 的任何 shell 命令,它都会出现在旁边带有版本名称的 Spark 徽标上。
$ pyspark
$ Python 2.6.6(r266:84292,2015 年 5 月 22 日,08:34:51)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-15)] 在 linux2
…………
…………
欢迎来到
版本 1.3.0
您可以使用 spark-submit 命令:
spark-submit --version
如果您正在使用 Databricks 并与笔记本对话,只需 运行 :
spark.version
在 Spark 中 2.x program/shell,
使用
spark.version
其中 spark
变量属于 SparkSession
对象
在 spark-shell
开始时使用控制台日志
[root@bdhost001 ~]$ spark-shell
Setting the default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
未进入code/shell
spark-shell --version
[root@bdhost001 ~]$ spark-shell --version
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
Type --help for more information.
spark-submit --version
[root@bdhost001 ~]$ spark-submit --version
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
Type --help for more information.
如果您使用的是 pyspark,则可以在粗体 Spark 徽标旁边看到正在使用的 spark 版本,如下所示:
manoj@hadoop-host:~$ pyspark
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/__ / .__/\_,_/_/ /_/\_\ version 1.6.0
/_/
Using Python version 2.7.6 (default, Jun 22 2015 17:58:13)
SparkContext available as sc, HiveContext available as sqlContext.
>>>
如果想显式获取spark版本,可以使用SparkContext的version方法,如下所示:
>>>
>>> sc.version
u'1.6.0'
>>>
如果您使用的是 Zeppelin 笔记本,您可以运行:
sc.version
要了解 Scala 版本,您可以 运行:
util.Properties.versionString
使用下面获取spark版本
spark-submit --version
为了在 shell 上打印 Spark 的版本,请执行以下解决方案工作。
SPARK_VERSION=$(spark-shell --version &> tmp.data ; grep version tmp.data | head -1 | awk '{print $NF}';rm tmp.data)
echo $SPARK_VERSION
如果您想 运行 它以编程方式使用 python
脚本
你可以使用这个 script.py
:
from pyspark.context import SparkContext
from pyspark import SQLContext, SparkConf
sc_conf = SparkConf()
sc = SparkContext(conf=sc_conf)
print(sc.version)
运行 它与 python script.py
或 python3 script.py
上面的脚本也适用于 python shell。
直接在 python 脚本上使用 print(sc.version)
将不起作用。如果你直接运行它,你会得到这个错误:NameError: name 'sc' is not defined
.
这里的大部分答案都需要初始化 sparksession。这个答案提供了一种从库中静态推断版本的方法。
ammonites@ org.apache.spark.SPARK_VERSION
res4: String = "2.4.5"
我用于 AWS EMR 正确 PySpark 版本安装的非交互式方式:
# pip3 install pyspark==$(spark-submit --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}")
Collecting pyspark==2.4.4
解决方案:
# spark-shell --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}"
2.4.4
解决方案:
# spark-submit --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}"
2.4.4
如果您想以编程方式打印版本,请使用
from pyspark.sql import SparkSession
spark = SparkSession.builder.master("local").getOrCreate()
print(spark.sparkContext.version)
如果像我一样,一个是 运行ning spark inside a docker container 并且没有什么办法用于 spark-shell,一个可以 运行 jupyter notebook,在 jupyter notebook 中构建名为 sc
的 SparkContext
对象,并调用如下代码所示的版本:
docker run -p 8888:8888 jupyter/pyspark-notebook ##in the shell where docker is installed
import pyspark
sc = pyspark.SparkContext('local[*]')
sc.version
试试这个方法:
import util.Properties.versionString
import org.apache.spark.sql.SparkSession
val spark = SparkSession
.builder
.appName("my_app")
.master("local[6]")
.getOrCreate()
println("Spark Version: " + spark.version)
println("Scala Version: " + versionString)
如题,如何知道CentOS安装了哪个版本的spark?
当前系统已安装cdh5.1.0。
如果您使用 Spark-Shell,它会出现在开始的横幅中。
以编程方式,可以使用 SparkContext.version
。
打开 Spark shell 终端,运行 sc.version
您使用 spark-shell 或 pyspark 的任何 shell 命令,它都会出现在旁边带有版本名称的 Spark 徽标上。
$ pyspark
$ Python 2.6.6(r266:84292,2015 年 5 月 22 日,08:34:51)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-15)] 在 linux2
…………
…………
欢迎来到
版本 1.3.0
您可以使用 spark-submit 命令:
spark-submit --version
如果您正在使用 Databricks 并与笔记本对话,只需 运行 :
spark.version
在 Spark 中 2.x program/shell,
使用
spark.version
其中 spark
变量属于 SparkSession
对象
在 spark-shell
开始时使用控制台日志
[root@bdhost001 ~]$ spark-shell
Setting the default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
未进入code/shell
spark-shell --version
[root@bdhost001 ~]$ spark-shell --version
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
Type --help for more information.
spark-submit --version
[root@bdhost001 ~]$ spark-submit --version
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.2.0
/_/
Type --help for more information.
如果您使用的是 pyspark,则可以在粗体 Spark 徽标旁边看到正在使用的 spark 版本,如下所示:
manoj@hadoop-host:~$ pyspark
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel).
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/__ / .__/\_,_/_/ /_/\_\ version 1.6.0
/_/
Using Python version 2.7.6 (default, Jun 22 2015 17:58:13)
SparkContext available as sc, HiveContext available as sqlContext.
>>>
如果想显式获取spark版本,可以使用SparkContext的version方法,如下所示:
>>>
>>> sc.version
u'1.6.0'
>>>
如果您使用的是 Zeppelin 笔记本,您可以运行:
sc.version
要了解 Scala 版本,您可以 运行:
util.Properties.versionString
使用下面获取spark版本
spark-submit --version
为了在 shell 上打印 Spark 的版本,请执行以下解决方案工作。
SPARK_VERSION=$(spark-shell --version &> tmp.data ; grep version tmp.data | head -1 | awk '{print $NF}';rm tmp.data)
echo $SPARK_VERSION
如果您想 运行 它以编程方式使用 python
脚本
你可以使用这个 script.py
:
from pyspark.context import SparkContext
from pyspark import SQLContext, SparkConf
sc_conf = SparkConf()
sc = SparkContext(conf=sc_conf)
print(sc.version)
运行 它与 python script.py
或 python3 script.py
上面的脚本也适用于 python shell。
直接在 python 脚本上使用 print(sc.version)
将不起作用。如果你直接运行它,你会得到这个错误:NameError: name 'sc' is not defined
.
这里的大部分答案都需要初始化 sparksession。这个答案提供了一种从库中静态推断版本的方法。
ammonites@ org.apache.spark.SPARK_VERSION
res4: String = "2.4.5"
我用于 AWS EMR 正确 PySpark 版本安装的非交互式方式:
# pip3 install pyspark==$(spark-submit --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}")
Collecting pyspark==2.4.4
解决方案:
# spark-shell --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}"
2.4.4
解决方案:
# spark-submit --version 2>&1| grep -m 1 -Eo "([0-9]{1,}\.)+[0-9]{1,}"
2.4.4
如果您想以编程方式打印版本,请使用
from pyspark.sql import SparkSession
spark = SparkSession.builder.master("local").getOrCreate()
print(spark.sparkContext.version)
如果像我一样,一个是 运行ning spark inside a docker container 并且没有什么办法用于 spark-shell,一个可以 运行 jupyter notebook,在 jupyter notebook 中构建名为 sc
的 SparkContext
对象,并调用如下代码所示的版本:
docker run -p 8888:8888 jupyter/pyspark-notebook ##in the shell where docker is installed
import pyspark
sc = pyspark.SparkContext('local[*]')
sc.version
试试这个方法:
import util.Properties.versionString
import org.apache.spark.sql.SparkSession
val spark = SparkSession
.builder
.appName("my_app")
.master("local[6]")
.getOrCreate()
println("Spark Version: " + spark.version)
println("Scala Version: " + versionString)