搭配 Databricks Connect for Python 使用 Spark 殼層
注意
本文涵蓋 Databricks Runtime 13.3 LTS 和更新版本適用的 Databricks Connect。
本文說明如何使用適用於 Python 的 Databricks Connect 和 Spark 殼層。 Databricks Connect 可讓您將熱門應用程式連線到 Azure Databricks 計算。 請參閱 什麼是 Databricks Connect?。
注意
開始使用 Databricks Connect 之前,您必須先 設定 Databricks Connect 用戶端。
Spark 殼層 僅適用於 Azure Databricks 個人存取令牌驗證驗證 。
若要使用 Databricks Connect 搭配 Spark 殼層和 Python,請遵循這些指示。
若要啟動 Spark 殼層,並將其連線到執行中的叢集,請從您啟動的 Python 虛擬環境執行下列其中一個命令:
如果您已設定
SPARK_REMOTE
環境變數,請執行下列命令:pyspark
如果您尚未設定
SPARK_REMOTE
環境變數,請改為執行下列命令:pyspark --remote "sc://<workspace-instance-name>:443/;token=<access-token-value>;x-databricks-cluster-id=<cluster-id>"
Spark 殼層隨即出現,例如:
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'. >>>
現在執行簡單的 PySpark 命令,例如 spark.range(1,10).show()
。 如果沒有錯誤,您已成功連線。
如需如何使用 Spark 殼層搭配 Python 在計算上執行命令的資訊,請參閱 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 程式代碼都會在本機執行,而涉及 DataFrame 作業的所有 PySpark 程式代碼都會在遠端 Azure Databricks 工作區的叢集上執行,並執行回應會傳回給本機呼叫者。
若要停止 Spark 殼層,請按
Ctrl + d
或Ctrl + z
,或執行 命令quit()
或exit()
。