Używanie powłoki Spark z usługą Databricks Connect dla języka Python

Uwaga

W tym artykule opisano usługę Databricks Connect dla środowiska Databricks Runtime 13.3 LTS lub nowszego.

W tym artykule opisano sposób używania programu Databricks Connect dla języka Python i powłoki Spark. Usługa Databricks Connect umożliwia łączenie popularnych aplikacji z obliczeniami usługi Azure Databricks. Zobacz Co to jest usługa Databricks Connect?.

Uwaga

Przed rozpoczęciem korzystania z usługi Databricks Connect należy skonfigurować klienta Usługi Databricks Connect.

Powłoka Spark współpracuje tylko z uwierzytelnianiem za pomocą osobistego tokenu dostępu usługi Azure Databricks.

Aby użyć usługi Databricks Connect z powłoką Spark i językiem Python, postępuj zgodnie z tymi instrukcjami.

  1. Aby uruchomić powłokę Spark i połączyć ją z uruchomionym klastrem, uruchom jedno z następujących poleceń z aktywowanego środowiska wirtualnego języka Python:

    Jeśli ustawiono zmienną SPARK_REMOTE środowiskową, uruchom następujące polecenie:

    pyspark
    

    Jeśli nie ustawiono zmiennej środowiskowej SPARK_REMOTE , uruchom następujące polecenie:

    pyspark --remote "sc://<workspace-instance-name>:443/;token=<access-token-value>;x-databricks-cluster-id=<cluster-id>"
    

    Zostanie wyświetlona powłoka Spark, na przykład:

    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'.
    >>>
    

Teraz uruchom proste polecenie PySpark, takie jak spark.range(1,10).show(). Jeśli nie ma żadnych błędów, połączenie zostało pomyślnie nawiązane.

  1. Zapoznaj się z tematem Interactive Analysis with the Spark Shell (Interaktywna analiza za pomocą powłoki Spark w powłoce Spark w języku Python) w celu uruchamiania poleceń w obliczeniach.

    Użyj wbudowanej spark zmiennej do reprezentowania SparkSession elementu w uruchomionym klastrze, na przykład:

    >>> 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
    

    Cały kod w języku Python działa lokalnie, podczas gdy cały kod PySpark obejmujący operacje ramki danych jest uruchamiany w klastrze w zdalnym obszarze roboczym usługi Azure Databricks i uruchamiane odpowiedzi są wysyłane z powrotem do lokalnego obiektu wywołującego.

  2. Aby zatrzymać powłokę Spark, naciśnij Ctrl + d lub Ctrl + z, lub uruchom polecenie quit() lub exit().