適用於 Visual Studio Code 的 Databricks Driver for SQLTools
重要
這項功能處於公開預覽狀態。
Databricks Driver for SQLTools 可讓您使用適用於 Visual Studio Code 的 SQLTools 延伸項目來瀏覽 SQL 物件,並在遠端 Azure Databricks 工作區中執行 SQL 查詢。
開始之前
在您使用 Databricks Driver for SQLTools 之前,您的 Azure Databricks 工作區和本機開發電腦必須符合下列需求。
工作區需求
您必須至少有一個 Azure Databricks 工作區可供使用,且工作區必須符合下列需求:
工作區必須包含至少一個 Databricks SQL 倉儲。
注意
Databricks Driver for SQLTools 不支援 Azure Databricks 叢集。
針對已啟用 Unity 目錄的工作區,該工作區必須包含至少一個目錄,且該目錄內至少有一個結構描述 (正式稱為資料庫)。
針對未啟用 Unity 目錄的工作區,該工作區必須包含至少一個結構描述 (正式稱為資料庫)。
本機開發電腦需求
您必須在本機開發電腦上具有下列內容:
- Visual Studio Code 1.70 版或更新版本。 若要檢視已安裝的版本,請從 Linux 或 macOS 上的主功能表按下 [程式碼] > [關於 Visual Studio Code],然後按下 Windows 上的 [說明] > [關於]。 若要下載、安裝及設定 Visual Studio Code,請參閱設定 Visual Studio Code。
- 適用於 Visual Studio Code 的 SQLTools 延伸項目。
- 適用於 Visual Studio Code 的 Databricks Driver for SQLTools 延伸項目。
若要安裝 SQLTools 延伸項目,請移至 "SQLTools",然後按下 [安裝],或:
在 Visual Studio Code 的主功能表上,按下 [檢視] > [延伸項目]。
在 [搜尋 Marketplace 中的延伸項目] 方塊中,輸入
SQLTools
。從 "Matheus Teixeira" 按下 "SQLTools" 項目。
注意
可能會列出多個 "SQLTools" 項目。 請務必從 "Matheus Teixeira" 按下項目。
按一下 [安裝]。
若要安裝 Databricks Driver for SQLTools 延伸項目,請移至 "Databricks Driver for SQLTools",然後按下 [安裝],或:
- 在 Visual Studio Code 的主功能表上,按下 [檢視] > [延伸項目]。
- 在 [搜尋 Marketplace 中的延伸項目] 方塊中,輸入
Databricks Driver for SQLTools
。 - 按下 "Databricks Driver for SQLTools" 項目。
- 按一下 [安裝]。
驗證
您必須設定 Databricks Driver for SQLTools 的驗證,如下所示。
Databricks Driver for SQLTools 支援下列 Azure Databricks 驗證類型:
- Azure Databricks 個人存取權杖驗證
- Azure Databricks OAuth 機器對機器 (M2M) 驗證
- Azure Databricks OAuth 使用者對機器 (U2M) 驗證
- Azure CLI 驗證
注意
Databricks Driver for SQLTools 不支援 Microsoft Entra ID 權杖。
Azure Databricks 個人存取權杖驗證
若要搭配 Azure Databricks 個人存取權杖驗證使用 Databricks Driver for SQLTools,您必須具有 Azure Databricks 個人存取權杖。 若要建立個人存取令牌,請遵循適用於工作區使用者的 Azure Databricks 個人存取令牌中的步驟。
Azure Databricks OAuth 機器對機器 (M2M) 驗證
您可以透過 Databricks Driver for SQLTools,使用 Azure Databricks OAuth 機器對機器 (M2M) 驗證進行驗證,如下所示:
注意
Azure Databricks OAuth M2M 驗證可在 Databricks Driver for SQLTools 0.4.2 版和更新版本中使用。
- 完成 OAuth M2M 驗證的設定步驟。 請參閱 OAuth 機器對機器 (M2M) 驗證。
- 使用您的 OAuth M2M 驗證組態設定建立 Azure Databricks 組態設定檔。 請參閱 OAuth 機器對機器 (M2M) 驗證的 "Config" 一節。
- 在您的本機開發電腦上安裝並開啟適用於 Visual Studio Code 的 Databricks 延伸項目。
- 在適用於 Visual Studio Code 的 Databricks 延伸項目中,按下 [設定] 窗格中的 [設定] 按鈕。 如果未顯示 [設定] 按鈕,請改為按下齒輪 ([設定工作區]) 圖示。
- 在 [命令選擇區] 中,針對 [Databricks 主機],輸入 Azure Databricks [個別工作區網址],例如
https://adb-1234567890123456.7.azuredatabricks.net
,然後按 "Enter"。 - 選取符合您在步驟 2 中建立的組態設定檔項目。
- 請在網頁瀏覽器中完成任何畫面上的指示,以使用 Azure Databricks 帳戶完成驗證。
Azure Databricks OAuth 使用者對機器 (U2M) 驗證
您可以透過 Databricks Driver for SQLTools,使用 Azure Databricks OAuth 使用者對機器 (U2M) 驗證進行驗證,如下所示:
注意
Azure Databricks OAuth U2M 驗證可在 Databricks Driver for SQLTools 0.4.2 版和更新版本中使用。
- 在您的本機開發電腦上安裝並開啟適用於 Visual Studio Code 的 Databricks 延伸項目。
- 在適用於 Visual Studio Code 的 Databricks 延伸項目中,按下 [設定] 窗格中的 [設定] 按鈕。 如果未顯示 [設定] 按鈕,請改為按下齒輪 ([設定工作區]) 圖示。
- 在 [命令選擇區] 中,針對 [Databricks 主機],輸入 Azure Databricks [個別工作區網址],例如
https://adb-1234567890123456.7.azuredatabricks.net
。 然後按 Enter。 - 選取 [OAuth (使用者到機器)]。
- 請在網頁瀏覽器中完成任何畫面上的指示,以使用 Azure Databricks 帳戶完成驗證。 如果出現提示,則允許
all-apis
存取。
Azure CLI 驗證
您可以透過 Databricks Driver for SQLTools 使用 Azure CLI 進行驗證,如下所示:
注意
使用 Azure CLI 進行驗證處於實驗性功能狀態。 這項功能可在 Databricks Driver for SQLTools 0.4.2 版和更新版本中使用。
- 如果尚未這麼做,請在本機開發電腦上安裝 Azure CLI。
- 在您的本機開發電腦上安裝並開啟適用於 Visual Studio Code 的 Databricks 延伸項目。
- 在適用於 Visual Studio Code 的 Databricks 延伸項目中,按下 [設定] 窗格中的 [設定] 按鈕。 如果未顯示 [設定] 按鈕,請改為按下齒輪 ([設定工作區]) 圖示。
- 在 [命令選擇區] 中,針對 [Databricks 主機],輸入 Azure Databricks [個別工作區網址],例如
https://adb-1234567890123456.7.azuredatabricks.net
。 然後按 Enter。 - 選取 [Azure CLI]。
- 依照畫面上的提示,以使用 Azure CLI 完成驗證。
連線至結構描述
- 在 Visual Studio Code 的側邊欄中,按下 "SQLTools" 圖示。
- 在 "SQLTools" 檢視中,如果這是您第一次使用 SQLTools 延伸項目,請按下 [連線] 窗格中的 [新增新連線]。 否則,請按下窗格標題列中的 [新增新連線] 圖示。
- 在 [SQLTools 設定] 索引標籤上,針對 [選取資料庫驅動程式] 步驟,按下 "Databricks" 圖示。
- 針對 [連線設定] 步驟,輸入下列有關倉儲、目錄和結構描述的資訊:
針對 [連線名稱],輸入此連線的某些唯一名稱。
(選用) 針對 [連線群組],輸入現有連線群組的名稱,以將新的連線新增至該群組。 或者,輸入唯一名稱,以建立具有新連線的新連線群組。 連線群組可讓您更輕鬆地在延伸項目中尋找連線。
針對 [連線路徑],請選取下列其中一項:
- 若要使用 Azure Databricks 個人存取權杖進行驗證,請選取 [主機名稱和權杖]。
- 針對 Databricks Driver for SQLTools 0.4.2 版和更新版本,若要使用 OAuth U2M 或 M2M 或 Azure CLI 驗證,請選取 [VS Code 延伸項目 (搶鮮版 (Beta))]。
如果您為 [連線方式] 選取了 [主機名稱和權杖],則針對 [主機],輸入倉儲的 [伺服器主機名稱] 設定。 若要取得倉儲的 [伺服器主機名稱] 設定,請參閱取得 Azure Databricks 計算資源的連線詳細資料。
針對 [路徑],輸入倉儲或叢集的 [HTTP 路徑] 設定。 若要取得倉儲的 [HTTP 路徑] 設定,請參閱取得 Azure Databricks 計算資源的連線詳細資料。
如果您為 [連線方式] 選取了 [主機名稱和權杖],則在 [權杖] 中輸入您的 Azure Databricks 個人存取權杖值。
針對 [目錄],輸入目錄的名稱。
注意
針對未啟用 Unity 目錄的工作區,您可以將 [目錄] 保留空白,以使用
hive_metastore
的預設值。針對 [結構描述],輸入結構描述的名稱。
(選用) 針對 [顯示記錄預設限制],保留
50
的預設值,以僅顯示每個查詢的前 50 個資料列,或輸入不同的限制。
- 按一下 [測試連接] 。
- 如果連線測試成功,請按下 [儲存連線]。
變更連線的設定
此程序假設您已成功連線到至少一個倉儲。
- 如果看不到 SQLTools 檢視,請在 Visual Studio Code 的側邊欄中,按下 "SQLTools" 圖示。
- 在 [連線] 窗格中,如果目標連線存在一個連線群組,則請將其展開。
- 以滑鼠右鍵按一下連線,然後按下 [編輯連線]。
- 變更目標設定。
- 按一下 [測試連接] 。
- 如果連線測試成功,請按下 [儲存連線]。
瀏覽結構描述的物件
- 在 [連線] 窗格中,如果目標連線存在一個連線群組,則請將其展開。
- 按兩下或展開倉儲的目標連線。
- 如果連線存在一個目標資料庫 (結構描述),則請將其展開。
- 如果資料庫 (結構描述) 有一或多個資料表或檢視,請展開 [資料表] 或 [檢視]。
- 展開任何目標資料表或檢視,以檢視資料表或檢視的資料行。
檢視資料表或檢視的資料列或結構描述
在 [連線] 窗格中展開 [資料表] 或 [檢視] 時,執行下列其中一項:
- 若要顯示資料表或檢視的資料列,請以滑鼠右鍵按一下資料表或檢視,然後按下 [顯示資料表記錄] 或 [顯示檢視記錄]。
- 若要顯示資料表或檢視的結構描述,請以滑鼠右鍵按一下資料表或檢視,然後按下 [描述資料表] 或 [描述檢視]。
產生資料表的插入查詢
- 將資料指標放在現有編輯器中要新增插入查詢的位置。
- 在 [連線] 窗格中展開 [資料表] 時,以滑鼠右鍵按一下資料表,然後按下 [產生插入查詢]。 插入查詢的定義會新增至資料指標的插入點。
建立並執行查詢
此程序假設您已成功連線到至少一個倉儲。
- 在 [連線] 窗格中,如果目標連線存在一個連線群組,則請將其展開。
- 按兩下或展開倉儲的目標連線。
- 選取連線後,按兩下 [連線] 窗格標題列中的 [新增 SQL 檔案]。 新編輯器索引標籤隨即出現。
- 在新編輯器中輸入您的 SQL 查詢。
- 若要執行 SQL 查詢,請按下編輯器中的 [在作用中連線上執行]。 查詢的結果會在新編輯器索引標籤中顯示。
執行現有的查詢
此程序假設您已成功連線到至少一個倉儲。
- 在 [連線] 窗格中,如果目標連線存在一個連線群組,則請將其展開。
- 按兩下或展開倉儲的目標連線。
- 選取連線後,開啟任何副檔名為
.sql
的檔案,或在先前開啟的任何編輯器中選取任何連續 SQL 陳述式群組。 - 若要從開啟的
.sql
檔案執行 SQL 查詢,並在編輯器中顯示您的.sql
檔案內容,請在編輯器中按下 [在作用中連線上執行]。 查詢的結果會在新編輯器索引標籤中顯示。 - 若要在先前開啟的編輯器中執行選取的連續 SQL 陳述式群組,請以滑鼠右鍵按一下您的選取項目,然後按下 [執行選取的查詢]。 查詢的結果會在新編輯器索引標籤中顯示。
將使用記錄傳送至 Databricks
如果您在使用 Databricks Driver for SQLTools 時遇到問題,您可以執行下列動作,將使用記錄和相關資訊傳送至 Databricks 支援:
- 在您的本機開發電腦上安裝適用於 Visual Studio Code 的 Databricks 延伸項目。
- 檢查 [記錄:已啟用] 設定或將
databricks.logs.enabled
設定為true
,來開啟記錄,如 適用於 Visual Studio Code 的 Databricks 延伸項目的設定中所述。請務必在開啟記錄之後重新啟動 Visual Studio Code。 - 嘗試重現您的問題。
- 從 [命令選擇區] (從主功能表的 [檢視] > [命令選擇區]),執行 [Databricks:開啟完整記錄] 命令。
- 將顯示的
Databricks Logs.log
、databricks-cli-logs.json
和sdk-and-extension-logs.json
檔案傳送至 Databricks 支援。 - 同時複製問題內容中 [終端機] ([檢視] > [終端機]) 的內容,並將此內容傳送至 Databricks 支援。
如果已核取 [記錄:已啟用] 或將 databricks.logs.enabled
設定為 true
,[輸出] 檢視 ([檢視] > [輸出,Databricks 記錄]) 會顯示已截斷的資訊。 若要顯示詳細資訊,請變更下列設定,如適用於 Visual Studio Code 的 Databricks 延伸項目的設定中所述:
- 記錄:陣列長度上限或
databricks.logs.maxArrayLength
- 記錄:欄位長度上限或
databricks.logs.maxFieldLength
- 記錄:截斷深度或
databricks.logs.truncationDepth
其他資源
- SQLTools 文件
- GitHub 上的 Databricks Driver for SQLTools