適用於 Python 的 Databricks Connect
注意
本文涵蓋 Databricks Runtime 13.3 LTS 和更新版本適用的 Databricks Connect。
本文示範如何使用 Python 和 PyCharm 快速開始使用 Databricks Connect。
- 如需本文的 R 版本,請參閱 Databricks Connect for R。
- 如需本文的 Scala 版本,請參閱 Databricks Connect for Scala。
Databricks Connect 可讓您將熱門 IDE,例如 PyCharm、Notebook 伺服器和其他自定義應用程式連線至 Azure Databricks 叢集。 請參閱 什麼是 Databricks Connect?。
教學課程
若要略過本教學課程並使用不同的 IDE,請參閱 後續步驟。
需求
若要完成本教學課程,您必須符合下列需求:
- 您的目標 Azure Databricks 工作區必須啟用 Unity 目錄。
- 您已安裝 PyCharm 。 本教學課程已使用 PyCharm Community Edition 2023.3.5 進行測試。 如果您使用不同版本的 PyCharm,下列指示可能會有所不同。
- 您的計算符合適用於 Python 的 Databricks Connect 安裝需求。
- 如果您使用傳統計算,則需要叢集的標識碼。 若要取得叢集標識碼,請在工作區中按兩下 提要字段上的 [計算 ],然後按兩下叢集的名稱。 在網頁瀏覽器的網址列中,複製URL和之間的
clusters
configuration
字元字串。
步驟 1:設定 Azure Databricks 驗證
本教學課程使用 Azure Databricks OAuth 使用者對機器 (U2M) 驗證和 Azure Databricks 組態配置檔,以向 Azure Databricks 工作區進行驗證。 若要使用不同的驗證類型,請參閱 設定連線屬性。
設定 OAuth U2M 驗證需要 Databricks CLI,如下所示:
如果尚未安裝,請安裝 Databricks CLI ,如下所示:
Linux、macOS
執行下列兩個命令,使用 Homebrew 安裝 Databricks CLI:
brew tap databricks/tap brew install databricks
Windows
您可以使用 winget、Chocolatey 或 Windows 子系統 Linux 版 (WSL) 來安裝 Databricks CLI。 如果您無法使用
winget
、Chocolatey 或 WSL,您應該略過此程式,並使用命令提示字元或 PowerShell 來改為從來源 安裝 Databricks CLI。注意
使用 Chocolatey 安裝 Databricks CLI 是 實驗性的。
若要使用
winget
來安裝 Databricks CLI,請執行下列兩個命令,然後重新啟動命令提示字元:winget search databricks winget install Databricks.DatabricksCLI
若要使用 Chocolatey 安裝 Databricks CLI,請執行下列命令:
choco install databricks-cli
若要使用 WSL 來安裝 Databricks CLI:
安裝
curl
並zip
透過 WSL。 如需詳細資訊,請參閱操作系統的檔。執行下列命令,使用 WSL 安裝 Databricks CLI:
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sh
執行下列命令來確認已安裝 Databricks CLI,其中顯示已安裝 Databricks CLI 的目前版本。 此版本應該是 0.205.0 或更新版本:
databricks -v
注意
如果您執行
databricks
但收到錯誤,例如command not found: databricks
,或如果您執行databricks -v
且版本號碼為 0.18 或以下,則表示您的電腦找不到正確的 Databricks CLI 可執行檔版本。 若要修正此問題,請參閱 確認 CLI 安裝。
起始 OAuth U2M 驗證,如下所示:
針對每個目標工作區執行下列命令,使用 Databricks CLI 在本機起始 OAuth 令牌管理。
在下列命令中,將 取代
<workspace-url>
為您的 Azure Databricks 個別工作區 URL,例如https://adb-1234567890123456.7.azuredatabricks.net
。databricks auth login --configure-cluster --host <workspace-url>
Databricks CLI 會提示您儲存輸入為 Azure Databricks 組態設定文件的資訊。 按
Enter
以接受建議的配置檔名稱,或輸入新或現有配置檔的名稱。 任何具有相同名稱的現有配置檔,會以您輸入的資訊覆寫。 您可以使用設定檔,在多個工作區之間快速切換驗證內容。若要取得任何現有設定檔的清單,請在個別的終端機或命令提示字元中,使用 Databricks CLI 來執行命令
databricks auth profiles
。 若要檢視特定設定檔的現有設定,請執行 命令databricks auth env --profile <profile-name>
。在您的網頁瀏覽器中,完成登入 Azure Databricks 工作區的畫面指示。
在終端機或命令提示字元中出現的可用叢集清單中,使用向上鍵和向下鍵來選取工作區中的目標 Azure Databricks 叢集,然後按
Enter
。 您也可以輸入叢集顯示名稱的任何部分,以篩選可用叢集的清單。若要檢視配置檔目前的 OAuth 令牌值和令牌即將到期的時間戳,請執行下列其中一個命令:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
如果您有多個具有相同
--host
值的配置檔,您可能需要一起指定--host
和-p
選項,以協助 Databricks CLI 尋找正確的相符 OAuth 令牌資訊。
步驟 2:建立專案
- 啟動 PyCharm。
- 在主功能表上,按兩下 [ 檔案 > 新專案]。
- 在 [ 新增專案 ] 對話框中,按兩下 [ 純 Python]。
- 針對 [ 位置],按兩下資料夾圖示,然後完成螢幕上的指示,以指定新 Python 項目的路徑。
- 保留 已選取 [建立 main.py 歡迎腳本 ]。
- 針對 [解釋器類型],按兩下 [專案 venv]。
- 展開 Python 版本,並使用資料夾圖示或下拉式清單,從上述需求指定 Python 解釋器的路徑。
- 按一下 [建立]。
步驟 3:新增 Databricks Connect 套件
- 在 PyCharm 的主功能表上,單擊 [ 檢視 > 工具 Windows > Python 套件]。
- 在搜尋方塊中輸入
databricks-connect
。 - 在 PyPI 存放 庫 清單中,按兩下 [databricks-connect]。
- 在結果窗格 的最新 下拉式清單中,選取符合您叢集 Databricks Runtime 版本的版本。 例如,如果您的叢集已安裝 Databricks Runtime 14.3,請選取 14.3.1。
- 按兩下 [ 安裝套件]。
- 安裝套件之後,您可以關閉 [ Python 套件] 視窗。
步驟 4:新增程序代碼
在 [ 專案 工具] 視窗中,以滑鼠右鍵按兩下專案的根資料夾,然後按兩下 [ 新增 > Python 檔案]。
輸入
main.py
並按兩下 [Python 檔案]。在檔案中輸入下列程式代碼,然後根據組態配置檔的名稱儲存盤案。
如果步驟 1 的組態設定檔名為
DEFAULT
,請在檔案中輸入下列程式代碼,然後儲存盤案:from databricks.connect import DatabricksSession spark = DatabricksSession.builder.getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)
如果步驟 1 的組態設定檔未命名
DEFAULT
,請改為在檔案中輸入下列程序代碼。 將佔位元<profile-name>
取代為步驟 1 的組態設定檔名稱,然後儲存盤案:from databricks.connect import DatabricksSession spark = DatabricksSession.builder.profile("<profile-name>").getOrCreate() df = spark.read.table("samples.nyctaxi.trips") df.show(5)
步驟 5:執行程序代碼
- 在遠端 Azure Databricks 工作區中啟動目標叢集。
- 叢集啟動之後,在主功能表上,按兩下 [ 執行 > 執行'main']。
- 在 [執行工具] 視窗 (檢視>工具視窗>執行), 在 [執行] 索引標籤的主窗格中,出現的前 5 個資料列。
samples.nyctaxi.trips
步驟 6:偵錯程序代碼
- 當叢集仍在執行時,在上述程式代碼中,按兩下旁
df.show(5)
的裝訂線以設定斷點。 - 在主功能表上,按兩下 [執行 > 偵錯'main']。
- 在 [偵錯工具] 視窗 (檢視>工具視窗>偵錯)的 [調試程式] 索引卷標的 [變數] 窗格中,展開 df 和 spark 變數節點,以瀏覽程式代碼
df
和spark
變數的相關信息。 - 在 [ 偵 錯工具] 視窗的提要字段中,按兩下綠色箭號 (繼續程式) 圖示。
- 在 [ 調試程式] 索引卷標的 [控制台] 窗格中,會出現的前 5 個數據列
samples.nyctaxi.trips
。
下一步
若要深入瞭解 Databricks Connect,請參閱下列文章:
若要使用 Azure Databricks 個人存取令牌以外的 Azure Databricks 驗證類型,請參閱 設定連線屬性。
若要使用其他 IDE、Notebook 伺服器和 Spark 殼層,請參閱下列內容:
若要檢視其他簡單的程式代碼範例,請參閱 適用於 Python 的 Databricks Connect 程式代碼範例。
若要檢視更複雜的程式代碼範例,請參閱 GitHub 中 Databricks Connect 存放庫的範例應用程式,特別是:
若要搭配 Databricks Connect 使用 Databricks Utilities,請參閱 Databricks Utilities with Databricks Connect for Python。
若要從 Databricks Runtime 12.2 LTS 的 Databricks Connect 移轉至 Databricks Connect for Databricks Runtime 13.3 LTS 和更新版本,請參閱 移轉至適用於 Python 的 Databricks Connect。