SparkSession

使用数据集和数据帧 API 对 Spark 进行编程的入口点。 SparkSession 可用于创建数据帧、将 DataFrame 注册为表、对表执行 SQL、缓存表和读取 parquet 文件。

Syntax

from pyspark.sql import SparkSession

spark = SparkSession.builder.getOrCreate()

属性

财产 说明
builder 用于构建会话配置的接口。
catalog 用户可以通过该接口创建、删除、更改或查询基础数据库、表、函数等。
client 提供访问Spark Connect客户端的权限。 仅限Spark Connect。
conf Spark 的运行时配置接口。
dataSource 返回数据源注册的 DataSourceRegistration。
profile 返回性能/内存分析的配置文件。
read 返回可用于将数据读取为 DataFrame 的 DataFrameReader。
readStream 返回一个 DataStreamReader,可用于将数据流读取为流式处理数据帧。
sparkContext 返回基础 SparkContext。 仅限经典模式。
streams 返回允许管理所有活动流式处理查询的 StreamingQueryManager。
tvf 返回用于调用表值函数的 TableValuedFunction (TVF)。
udf 返回 UDF 注册的 UDFRegistration。
udtf 返回 UDTF 注册的 UDTFRegistration。
version 运行此应用程序的 Spark 版本。

方法

方法 说明
createDataFrame(data, schema, samplingRatio, verifySchema) 从 RDD、列表、pandas DataFrame、numpy ndarray 或 pyarrow 表创建数据帧。
sql(sqlQuery, args, **kwargs) 返回一个表示给定查询结果的数据帧。
table(tableName) 以数据帧的形式返回指定的表。
range(start, end, step, numPartitions) 创建一个 DataFrame,其中包含一个名为 id,包含区域中的元素的 LongType 列。
newSession() 返回一个新的 SparkSession,其中包含单独的 SQLConf、已注册的临时视图和 UDF,但共享的 SparkContext 和表缓存。 仅限经典模式。
getActiveSession() 返回当前线程的活动 SparkSession。
active() 返回当前线程的活动或默认 SparkSession。
stop() 停止基础 SparkContext。
addArtifacts(*path, pyfile, archive, file) 将项目添加到客户端会话。
interruptAll() 中断当前在服务器上运行的此会话的所有作。
interruptTag(tag) 使用给定标记中断此会话的所有作。
interruptOperation(op_id) 使用给定 operationId 中断此会话的作。
addTag(tag) 添加要分配给此会话中此线程启动的所有作的标记。
removeTag(tag) 删除以前为此线程启动的作添加的标记。
getTags() 获取当前设置为分配给此线程启动的所有作的标记。
clearTags() 清除当前线程的作标记。