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.
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.
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 reprezentowaniaSparkSession
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.
Aby zatrzymać powłokę Spark, naciśnij
Ctrl + d
lubCtrl + z
, lub uruchom poleceniequit()
lubexit()
.