SparkSession
Dataset およびDataFrame APIを使用したSparkプログラミングのエントリ ポイント。 SparkSession使用すると、 DataFramesを作成したり、 DataFramesテーブルとして登録したり、テーブルに対してSQLを実行したり、テーブルをキャッシュしたり、.parquet ファイルをread.parquetことができます。
構文
from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
プロパティ
属性 | 説明 |
|---|---|
このアプリケーションが実行されている Spark のバージョン。 | |
SparkのRuntime構成インターフェース。 | |
ユーザーが基礎となるデータベース、テーブル、関数などを作成、削除、変更、または照会できるインターフェイス。 | |
UDF 登録の UDFRegistration を返します。 | |
UDTF 登録用の UDTFRegistration を返します。 | |
データソース登録の DataSourceRegistration を返します。 | |
パフォーマンス/メモリ プロファイリングのプロファイルを返します。 | |
基礎となる SparkContext を返します。クラシックモードのみ。 | |
データを DataFrame として読み取るために使用できる DataFrameReader を返します。 | |
データ ストリームをストリーミング DataFrame として読み取るために使用できる DataStreamReader を返します。 | |
すべてのアクティブなストリーミング クエリを管理できる StreamingQueryManager を返します。 | |
テーブル値関数 (TVF) を呼び出すための TableValuedFunction を返します。 |
方法
手法 | 説明 |
|---|---|
RDD 、リスト、 Pandas DataFrame 、numpy ndarray、または pyarrow テーブルからDataFrameを作成します。 | |
指定されたクエリの結果を表す DataFrame を返します。 | |
指定されたテーブルを DataFrame として返します。 | |
範囲内の要素を含む、 | |
個別の SQLConf、登録された一時ビュー、および UDF を持つ新しい SparkSession を返しますが、SparkContext とテーブル キャッシュは共有されます。クラシックモードのみ。 | |
現在のスレッドのアクティブな SparkSession を返します。 | |
現在のスレッドのアクティブまたはデフォルトの SparkSession を返します。 | |
基礎となる SparkContext を停止します。 | |
クライアント セッションにアーティファクトを追加します。 | |
現在サーバー上で実行されているこのセッションのすべての操作を中断します。 | |
指定されたタグを持つこのセッションのすべての操作を中断します。 | |
指定された operationId でこのセッションの操作を中断します。 | |
このセッションでこのスレッドによって開始されたすべての操作に割り当てられるタグを追加します。 | |
このスレッドによって開始された操作に対して以前に追加されたタグを削除します。 | |
このスレッドによって開始されたすべての操作に現在割り当てられるように設定されているタグを取得します。 | |
現在のスレッドの操作タグをクリアします。 |
ビルダー
手法 | 説明 |
|---|---|
| 設定オプションを設定します。オプションは、SparkConf と SparkSession 自身の構成の両方に自動的に伝播されます。 |
| 接続する Spark マスター URL を設定します。 |
| Spark Connect 経由で接続するための Spark リモート URL を設定します。 |
| Spark Web UI に表示されるアプリケーションの名前を設定します。 |
| 永続的なHive metastoreへの接続を含むHiveサポートを有効にします。 |
| 既存の SparkSession を取得するか、既存のものが存在しない場合は、このビルダーで設定されたオプションに基づいて新しいものを作成します。 |
| 新しい SparkSession を作成します。 |
例
spark = (
SparkSession.builder
.master("local")
.appName("Word Count")
.config("spark.some.config.option", "some-value")
.getOrCreate()
)
spark.sql("SELECT * FROM range(10) where id > 7").show()
+---+
| id|
+---+
| 8|
| 9|
+---+
spark.createDataFrame([('Alice', 1)], ['name', 'age']).show()
+-----+---+
| name|age|
+-----+---+
|Alice| 1|
+-----+---+
spark.range(1, 7, 2).show()
+---+
| id|
+---+
| 1|
| 3|
| 5|
+---+