メインコンテンツまでスキップ

SparkSession

Dataset およびDataFrame APIを使用したSparkプログラミングのエントリ ポイント。 SparkSession使用すると、 DataFramesを作成したり、 DataFramesテーブルとして登録したり、テーブルに対してSQLを実行したり、テーブルをキャッシュしたり、.parquet ファイルをread.parquetことができます。

構文

Python
from pyspark.sql import SparkSession

spark = SparkSession.builder.getOrCreate()

プロパティ

属性

説明

version

このアプリケーションが実行されている Spark のバージョン。

conf

SparkのRuntime構成インターフェース。

catalog

ユーザーが基礎となるデータベース、テーブル、関数などを作成、削除、変更、または照会できるインターフェイス。

udf

UDF 登録の UDFRegistration を返します。

udtf

UDTF 登録用の UDTFRegistration を返します。

dataSource

データソース登録の DataSourceRegistration を返します。

profile

パフォーマンス/メモリ プロファイリングのプロファイルを返します。

sparkContext

基礎となる SparkContext を返します。クラシックモードのみ。

read

データを DataFrame として読み取るために使用できる DataFrameReader を返します。

readStream

データ ストリームをストリーミング DataFrame として読み取るために使用できる DataStreamReader を返します。

streams

すべてのアクティブなストリーミング クエリを管理できる StreamingQueryManager を返します。

tvf

テーブル値関数 (TVF) を呼び出すための TableValuedFunction を返します。

方法

手法

説明

createDataFrame(data, schema, samplingRatio, verifySchema)

RDD 、リスト、 Pandas DataFrame 、numpy ndarray、または pyarrow テーブルからDataFrameを作成します。

sql(sqlQuery, args, **kwargs)

指定されたクエリの結果を表す DataFrame を返します。

table(tableName)

指定されたテーブルを DataFrame として返します。

range(start, end, step, numPartitions)

範囲内の要素を含む、 idという名前の単一の LongType 列を持つ DataFrame を作成します。

newSession()

個別の SQLConf、登録された一時ビュー、および UDF を持つ新しい SparkSession を返しますが、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()

現在のスレッドの操作タグをクリアします。

ビルダー

手法

説明

config(key, value)

設定オプションを設定します。オプションは、SparkConf と SparkSession 自身の構成の両方に自動的に伝播されます。

master(master)

接続する Spark マスター URL を設定します。

remote(url)

Spark Connect 経由で接続するための Spark リモート URL を設定します。

appName(name)

Spark Web UI に表示されるアプリケーションの名前を設定します。

enableHiveSupport()

永続的なHive metastoreへの接続を含むHiveサポートを有効にします。

getOrCreate()

既存の SparkSession を取得するか、既存のものが存在しない場合は、このビルダーで設定されたオプションに基づいて新しいものを作成します。

create()

新しい SparkSession を作成します。

Python
spark = (
SparkSession.builder
.master("local")
.appName("Word Count")
.config("spark.some.config.option", "some-value")
.getOrCreate()
)
Python
spark.sql("SELECT * FROM range(10) where id > 7").show()
Output
+---+
| id|
+---+
| 8|
| 9|
+---+
Python
spark.createDataFrame([('Alice', 1)], ['name', 'age']).show()
Output
+-----+---+
| name|age|
+-----+---+
|Alice| 1|
+-----+---+
Python
spark.range(1, 7, 2).show()
Output
+---+
| id|
+---+
| 1|
| 3|
| 5|
+---+