Spark Session

使用数据集和数据框API编程Spark的入口点。 要创建一个Spark会话,您应该使用 SparkSession.builder 属性。 另见 SparkSession

SparkSession.active ()

返回当前线程的活动或默认 SparkSession ,由构建器返回。

SparkSession.builder.appName (名称)

为应用程序设置一个名称,该名称将在Spark网页用户界面中显示。

SparkSession.builder.config ([键, 值, …])

设置一个配置选项。

SparkSession.builder.enableHiveSupport ()

启用Hive支持,包括与持久Hive元存储的连接、对Hive SerDes的支持和Hive用户定义函数。

SparkSession.builder.getOrCreate ()

获取一个现有的 SparkSession ,如果没有现有的,则根据此构建器中设置的选项创建一个新的。

SparkSession.builder.master (主节点)

设置要连接的 Spark master URL,例如“local”表示本地运行,“local[4]”表示在本地使用 4 个核心运行,或“spark://master:7077”表示在 Spark 独立集群上运行。

SparkSession.builder.remote (url)

设置要连接的 Spark 远程 URL,例如“sc://host:port”,以通过 Spark Connect 服务器运行。

SparkSession.catalog

用户可以通过此接口创建、删除、修改或查询底层数据库、表、函数等。

SparkSession.conf

Spark的运行时配置接口。

SparkSession.createDataFrame (数据[, 模式, …])

从一个 DataFrame 、一个 RDD 、一个列表、一个 pandas.DataFrame 或一个 numpy.ndarray 创建。

SparkSession.getActiveSession ()

返回当前线程的活动 SparkSession ,由构建器返回

SparkSession.newSession ()

返回一个新的 SparkSession 作为新的会话,具有独立的 SQLConf、注册的临时视图和 UDF,但共享 SparkContext 和表缓存。

SparkSession.range (开始[, 结束, 步长, …])

创建一个 DataFrame ,包含一个名为 id 的单列,元素范围从 start end (不包括)并且步长为 step

SparkSession.read

返回一个 DataFrameReader ,可以用于将数据读取为 DataFrame

SparkSession.readStream

返回一个 DataStreamReader ,可以用于将数据流作为流式 DataFrame 读取。

SparkSession.sparkContext

返回基础的 SparkContext

SparkSession.sql (sqlQuery[, args])

返回一个 DataFrame ,表示给定查询的结果。

SparkSession.stop ()

停止基础的 SparkContext

SparkSession.streams

返回一个 StreamingQueryManager ,可以管理在 上下文中活动的所有 StreamingQuery 实例。

SparkSession.table (表名)

返回指定的表作为一个 DataFrame

SparkSession.udf

返回一个 UDFRegistration 用于 UDF 注册。

SparkSession.udtf

返回一个 UDTFRegistration 用于 UDTF 注册。

SparkSession.version

该应用程序运行的Spark版本。

Spark Connect Only

SparkSession.builder.create ()

创建一个新的 SparkSession。

SparkSession.addArtifact (*路径[, py文件, …])

将工件添加到客户端会话。

SparkSession.addArtifacts (*路径[, pyfile, …])

将工件添加到客户端会话。

SparkSession.copyFromLocalToFs (本地路径, …)

将文件从本地复制到云存储文件系统。

SparkSession.client

提供对Spark Connect客户端的访问。

SparkSession.interruptAll ()

中断当前在连接服务器上运行的所有操作。

SparkSession.interruptTag (标签)

使用给定的操作标签中断此会话的所有操作。

SparkSession.interruptOperation (op_id)

使用给定的 operationId 中断此会话的操作。

SparkSession.addTag (标签)

为本会话中由此线程启动的所有操作分配一个标签。

SparkSession.removeTag (标签)

移除之前添加的标签,以便分配给该会话中由此线程启动的所有操作。

SparkSession.getTags ()

获取目前设置为分配给此线程启动的所有操作的标签。

SparkSession.clearTags ()

清除当前线程的操作标记。