如何查看Spark版本

时间:2015-04-17 03:52:26

标签: apache-spark cloudera-cdh

标题为什么我如何知道CentOS中安装了哪个版本的spark?

当前系统已安装cdh5.1.0。

15 个答案:

答案 0 :(得分:63)

如果您使用Spark-Shell,它会在开头的横幅中显示。

以编程方式,可以使用SparkContext.version

答案 1 :(得分:25)

您可以使用spark-submit命令: spark-submit --version

答案 2 :(得分:10)

在Spark 2.x程序/ shell中,

使用

while i<T:
temp =input()
even=""
odd=""
j=0
k=1
while j<len(temp):
    even = even+temp[j]
    j+=2
while k<len(temp):
    odd = odd+temp[k]
    k+=2
i+=1
print (even,odd)

spark.version 变量属于spark对象

的位置

SparkSession

开头使用控制台日志
spark-shell

无需进入代码/ shell

[root@bdhost001 ~]$ spark-shell Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 2.2.0 /_/

spark-shell --version

[root@bdhost001 ~]$ spark-shell --version Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 2.2.0 /_/ Type --help for more information.

spark-submit --version

答案 3 :(得分:7)

如果您正在使用Databricks并与笔记本电脑交谈,请运行:

spark.version

答案 4 :(得分:4)

在下面使用以获取星火版本

spark-submit --version

答案 5 :(得分:3)

你使用spark-shell或pyspark的shell命令,它将落在Spark Logo上,旁边有一个版本名称。

$ pyspark
$ Python 2.6.6(r266:84292,2015年5月22日,08:34:51) [bCC 4.4.7 20120313(Red Hat 4.4.7-15)]在linux2上 ............ ........... 欢迎来到      版本1.3.0

答案 6 :(得分:3)

如果您使用的是 Zeppelin笔记本电脑,则可以运行:

sc.version 

要了解scala版本,还可以运行:

util.Properties.versionString

答案 7 :(得分:1)

如果您正在使用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'
>>>

答案 8 :(得分:1)

如果要使用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.pypython3 script.py

运行

上面的脚本也可以在python shell上使用。


直接在python脚本上使用print(sc.version)无效。如果直接运行它,将出现以下错误:NameError: name 'sc' is not defined

答案 9 :(得分:1)

如果要以编程方式打印版本,请使用

;

答案 10 :(得分:0)

这里的大多数答案都需要初始化sparksession。这个答案提供了一种从库中静态推断版本的方法。

ammonites@ org.apache.spark.SPARK_VERSION
res4: String = "2.4.5"

答案 11 :(得分:0)

如果像我一样,在 docker 容器中运行 spark 而对于 spark-shell 几乎没有办法,那么可以运行 jupyter notebook,在 jupyter notebook 中构建名为 SparkContextsc 对象,以及调用如下代码所示的版本:

docker run -p 8888:8888 jupyter/pyspark-notebook ##in the shell where docker is installed

import pyspark
sc = pyspark.SparkContext('local[*]')
sc.version

答案 12 :(得分:-1)

在scala外壳内

scala> spark.version
res9: String = 2.4.4

答案 13 :(得分:-1)

为了在外壳上打印Spark的版本,请执行以下解决方案。

SPARK_VERSION=$(spark-shell --version &> tmp.data ; grep version tmp.data | head -1 | awk '{print $NF}';rm tmp.data)
echo $SPARK_VERSION

答案 14 :(得分:-1)

我用于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