SparkSession を作成する
この演習では、利用可能なすべてのコアを使ってローカルの Spark クラスタを起動します。クラスタには SparkSession オブジェクト経由でアクセスします。
SparkSession クラスには builder 属性があり、これは Builder クラスのインスタンスです。Builder クラスは次の 3 つの重要なメソッドを提供します。
- マスターノードの場所を指定する;
- アプリケーション名を付ける(任意);
- 既存の
SparkSessionを取得する、または存在しない場合は新しく作成する。
SparkSession クラスには Spark のバージョンを返す version 属性があります。Note: バージョンは pyspark モジュールの __version__ 属性からも参照できます。
SparkSession について詳しくは こちら をご覧ください。
作業が終わったらクラスタを停止してリソースを解放し、他のプロセスで利用できるようにするのがよい習慣です。
Notes:
- IPython Shell の横にある Slides パネルで、レッスンのスライドを復習すると役立つかもしれません。
- 演習で使用している Spark のバージョンは、レッスン内のものと同一ではありません。演習プラットフォームはより新しいバージョンに更新されています。
この演習はコースの一部です
Machine Learning with PySpark
演習の手順
pyspark.sqlからSparkSessionクラスをインポートします。- すべてのコアを使用するローカルクラスタに接続された
SparkSessionオブジェクトを作成します。アプリケーション名は'test'にします。 - クラスタ上で動作している Spark のバージョンを取得するために、
SparkSessionオブジェクトのversion属性を使います。Note: バージョンはプレゼンテーションで使われているものと異なる場合があります(随時更新されます)。 - クラスタをシャットダウンします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import the SparkSession class
from ____ import ____
# Create SparkSession object
spark = SparkSession.builder \
.master(____) \
.____(____) \
.____()
# What version of Spark?
print(spark.____)
# Terminate the cluster
spark.____()