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

PySpark シェル

注記

この記事では、Databricks Runtime 14.0 以降の Databricks Connect について説明します。

Databricks Connect for Python には、Databricks Connect を使用するように構成された PySpark REPL (Spark シェル) である pyspark バイナリが付属しています。

追加のパラメーターを指定せずに開始すると、シェルは環境 (DATABRICKS_ 環境変数や DEFAULT 構成プロファイルなど) からデフォルトの資格情報を取得して、 Databricks クラスターに接続します。 接続の設定に関する情報については、Databricks Connectのコンピュート設定を参照してください。

  1. Sparkシェルを起動し、稼働中のクラスターに接続するには、アクティブ化されたPython仮想環境から次のいずれかのコマンドを実行します。

    Bash
    pyspark

    たとえば、Spark シェルが表示されます。

    Output
    Python 3.10 ...
    [Clang ...] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    Welcome to
    ____ __
    / __/__ ___ _____/ /__
    _\ \/ _ \/ _ `/ __/ '_/
    /__ / .__/\_,_/_/ /_/\_\ version 13.x.dev0
    /_/

    Using Python version 3.10 ...
    Client connected to the Spark Connect server at sc://...:.../;token=...;x-databricks-cluster-id=...
    SparkSession available as 'spark'.
    >>>

    シェルが起動すると、spark オブジェクトはApache Spark Databricksクラスターで コマンドを実行できるようになります。単純な PySpark コマンド( spark.range(1,10).show()など)を実行します。 エラーがなければ、正常に接続されています。

  2. コンピュートでコマンドを実行するためにPythonでSparkシェルを使用する方法については、 Sparkシェルを使用したインタラクティブ解析 を参照してください。

    組み込み spark 変数を使用して、稼働中のクラスターの SparkSession を表します。

    >>> df = spark.read.table("samples.nyctaxi.trips")
    >>> df.show(5)
    +--------------------+---------------------+-------------+-----------+----------+-----------+
    |tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip|
    +--------------------+---------------------+-------------+-----------+----------+-----------+
    | 2016-02-14 16:52:13| 2016-02-14 17:16:04| 4.94| 19.0| 10282| 10171|
    | 2016-02-04 18:44:19| 2016-02-04 18:46:00| 0.28| 3.5| 10110| 10110|
    | 2016-02-17 17:13:57| 2016-02-17 17:17:55| 0.7| 5.0| 10103| 10023|
    | 2016-02-18 10:36:07| 2016-02-18 10:41:45| 0.8| 6.0| 10022| 10017|
    | 2016-02-22 14:14:41| 2016-02-22 14:31:52| 4.51| 17.0| 10110| 10282|
    +--------------------+---------------------+-------------+-----------+----------+-----------+
    only showing top 5 rows

    すべてのPython コードはローカルで実行されますが、リモートPySpark データフレームワークスペースのクラスターで実行されるDatabricks 操作と実行応答を含むすべての コードは、ローカルの呼び出し元に送り返されます。

  3. Spark シェルを停止するには、 Ctrl + d または Ctrl + zを押すか、コマンド quit() または exit()を実行します。