一、Spark应用程序的工作原理
spark应用程序通过驱动器程序(spark shell、idea等)来发起在集群上的并行操作,包括定义集群上的分布式数据集(RDD),并对数据集进行操作。驱动器程序通过对象SparkContext(即sc)连接spark集群,从而访问spark集群上的分布式文件。在驱动器程序上,可以通过sc来创建RDD,并且一次性操作管理多个执行器节点(通过Spark API对多个节点上的分布式数据集传递函数,进行操作)。
二、独立的spark程序
在spark shell中会自动初始化sc,而在Python、scala的独立应用程序中,需要连接spark,然后自定义初始化sc来使用Spark API操作spark集群。
1、Python
- spark连接:把应用程序写成Python脚本,通过bin/spark-submit 文件.py来运行程序,spark-submit会自动引入Python程序对spark的依赖
- sc初始化:
from pyspark import SparkConf,SparkContext
conf=SparkConf(