Python 为pyspark设置SparkContext
我是Python 为pyspark设置SparkContext,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我是spark和pyspark的新手。如果有人能解释一下SparkContextparameter到底做了什么,我将不胜感激?我如何为python应用程序设置spark\u上下文 请参阅:spark_上下文表示您与正在运行的spark cluster manager的接口。换句话说,您已经为spark定义了一个或多个运行环境(请参阅安装/初始化文档),详细说明了要在其上运行的节点等。您可以使用一个配置启动spark_上下文对象,该配置告诉它要使用哪个环境,例如,应用程序名称。所有进一步的交互,例
spark
和pyspark
的新手。如果有人能解释一下SparkContext
parameter到底做了什么,我将不胜感激?我如何为python应用程序设置spark\u上下文
请参阅:spark_上下文表示您与正在运行的spark cluster manager的接口。换句话说,您已经为spark定义了一个或多个运行环境(请参阅安装/初始化文档),详细说明了要在其上运行的节点等。您可以使用一个配置启动spark_上下文对象,该配置告诉它要使用哪个环境,例如,应用程序名称。所有进一步的交互,例如加载数据,都作为上下文对象的方法发生
对于简单的示例和测试,您可以“本地”运行spark cluster,并跳过上面的许多细节,例如
./bin/pyspark --master local[4]
将使用已设置为在自己的CPU上使用四个线程的上下文启动解释器
在独立应用程序中,要与sparksubmit一起运行:
from pyspark import SparkContext
sc = SparkContext("local", "Simple App")
Spark程序必须做的第一件事是创建SparkContext对象,它告诉Spark如何访问集群。要创建SparkContext,首先需要构建一个包含应用程序信息的SparkConf对象
如果您正在运行pyspark,即shell,则Spark会自动为您创建名为sc
的SparkContext对象。但是,如果您正在编写python程序,则必须执行以下操作
from pyspark import SparkContext
sc = SparkContext(appName = "test")
任何配置都会进入这个spark上下文对象,比如设置executer内存或内核数
例如,在调用时,也可以从shell传递这些参数
./bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn-cluster \
--num-executors 3 \
--driver-memory 4g \
--executor-memory 2g \
--executor-cores 1
lib/spark-examples*.jar \
10
要将参数传递给pyspark,请使用以下内容
./bin/pyspark --num-executors 17 --executor-cores 5 --executor-memory 8G
SparkContext对象是驱动程序。此对象协调将在其上运行应用程序的集群上的进程 运行PySpark shell时,会自动使用变量sc创建默认的SparkContext对象 如果创建独立应用程序,则需要在脚本中初始化SparkContext对象,如下所示:
sc = SparkContext("local", "My App")
其中第一个参数是集群的URL,第二个参数是应用程序的名称
我写了一篇文章,介绍了PySpark和Apache的基础知识,您可能会发现这篇文章很有用:
免责声明:我是该网站的创建者。所以这个命令应该在shell中运行,对吗?不在python脚本中?正确,这是用于玩系统的。在python脚本中应该如何设置它?集群URL
mesos
、spark
和local
之间有什么区别?用于部署选项