spark shell
当安装完成 spark 时可以进入 spark shell 中做简单的操作
进入 spark python shell
进入 spark 安装目录
./bin/pyspark
启动完成出现如下界面
进入 spark scala shell
./bin/spark-shell
启动完成出现如下界面
退出 shell 按 Ctrl-D。
spark shell 中的日志级别调整
在 spark 安装目录中 conf 文件夹下有 log4j.properties.template 文件 复制一份
cp log4j.properties.template log4j.properties
在 log4j.properties 文件中修改日志级别
spark 上下文
在 spark shell 中默认有 sc 对象为 spark 上下文,sc 可以读取文件 创建RDD
python 实例
scala 实例
spark 核心概念简介
每个 spark 应用都是由一个驱动器程序( driver program )来发起集群上的各种并行操作。驱动程序包括应用的 main 函数,并且定义了集群上的分布式数据集,还对这些分布式数据集应用了相关操作。在前面的例子中实际上 spark shell 就是驱动器程序。 驱动器程序通过 sparkContext 对象访问 spark。spark shell 中启动时自动创建 SparkContext 对象。并复制给 sc 变量。所有在 spark shell 中可以直接操作 sc
驱动器程序一般要管理多个执行器( executor )比如在集群上运行 count 操作,不同的集群会统计文件的不同部分的行数。
初始化 SparkContext
python 中初始化 SparkContext
from pyspark import SparkConf, SparkContext
conf = SparkConf().setMaster("local").setAppName("My Demo")
sc = SparkContext(conf=conf)
Scala 中初始化 SparkContext
import org.apache.spark.{SparkConf, SparkContext}
val config: SparkConf = new SparkConf().setAppName("My AppName").setMaster("local")
val sc: SparkContext = new SparkContext(config)
初始化 SparkSession
一般在使用 spark 时直接使用 SparkSession SparkSession初始化方法
python 中初始化 SparkSession
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName("My Demo") .getOrCreate()
Scala 中初始化 SparkSession
import org.apache.spark.sql.SparkSession
val spark = SparkSession.builder().appName("SparkSessionTest").master("local[2]").getOrCreate()
在 builder 后的设置参数与SparkConf参数设置一致
在初始化时还是设置其他参数 具体可以参照官方文档