始める無料で始める

SparkSession を作成する

この演習では、利用可能なすべてのコアを使ってローカルの Spark クラスタを起動します。クラスタには SparkSession オブジェクト経由でアクセスします。

SparkSession クラスには builder 属性があり、これは Builder クラスのインスタンスです。Builder クラスは次の 3 つの重要なメソッドを提供します。

  • マスターノードの場所を指定する;
  • アプリケーション名を付ける(任意);
  • 既存の SparkSession を取得する、または存在しない場合は新しく作成する。

SparkSession クラスには Spark のバージョンを返す version 属性があります。Note: バージョンは pyspark モジュールの __version__ 属性からも参照できます。

SparkSession について詳しくは こちら をご覧ください。

作業が終わったらクラスタを停止してリソースを解放し、他のプロセスで利用できるようにするのがよい習慣です。

Notes:

  1. IPython Shell の横にある Slides パネルで、レッスンのスライドを復習すると役立つかもしれません。
  2. 演習で使用している 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.____()
コードを編集して実行