Azure Databricks 概念

本文介紹一組您需要瞭解的基本概念,以便有效地使用 Azure Databricks。

帳戶和工作區

在 Azure Databricks 中, 工作區 是雲端中的 Azure Databricks 部署,可作為小組存取 Databricks 資產的環境。 根據您的需求,您的組織可以選擇擁有多個工作區或只有一個工作區。

Azure Databricks 帳戶 代表可包含多個工作區的單一實體。 啟用 Unity 目錄 的帳戶可用來管理使用者及其在帳戶中所有工作區集中存取資料的存取權。

計費:Databricks 單位 (DBU)

Azure Databricks 會根據 Databricks 單位 (DBU), 以 VM 實例類型為基礎的每小時處理能力單位計費。

請參閱 Azure Databricks 定價頁面

驗證和授權

本節說明當您管理 Azure Databricks 身分識別及其 Azure Databricks 資產存取權時需要知道的概念。

User

可存取系統的唯一個人。 使用者身分識別會以電子郵件位址表示。 請參閱 管理使用者

服務主體

服務身分識別,用於作業、自動化工具和系統,例如腳本、應用程式和 CI/CD 平臺。 服務主體會以應用程式識別元表示。 請參閱管理服務主體

群組

身分識別的集合。 群組可簡化身分識別管理,讓您更輕鬆地指派工作區、數據和其他安全性實體物件的存取權。 所有 Databricks 身分識別都可以指派為群組的成員。 請參閱 管理群組

存取控制清單 (ACL)

附加至工作區、叢集、作業、數據表或實驗的許可權清單。 ACL 會指定哪些使用者或系統進程被授與物件存取權,以及資產上允許哪些作業。 一般 ACL 中的每個項目都會指定主體和作業。 請參閱 訪問控制概觀

個人存取令牌

不透明的字串可用來向 REST API 進行驗證,以及透過技術夥伴中的工具來連線到 SQL 倉儲。 請參閱 Azure Databricks 個人存取令牌驗證

Microsoft Entra ID (先前稱為 Azure Active Directory) 令牌也可以用來向 REST API 進行驗證。

UI

Azure Databricks UI 是與功能互動的圖形化介面,例如工作區資料夾及其自主物件、數據物件和計算資源。

數據科學與工程

數據科學與工程 工具可協助數據科學家、數據工程師和數據分析師之間的共同作業。 本節說明基本概念。

工作區

工作區是存取所有 Azure Databricks 資產的環境。 工作區會將物件(筆記本、連結庫、儀錶板和實驗)組織成 資料夾 ,並提供數據物件和計算資源的存取權。

Notebook

Web 型介面,可用來建立數據科學和機器學習工作流程,其中包含可執行的命令、視覺效果和敘述文字。 請參閱 Databricks 筆記本簡介。

儀表板​​

介面,提供對視覺效果的有組織存取權。 請參閱 筆記本中的儀錶板。

程式庫

叢集上執行的筆記本或作業可使用的程式代碼套件。 Databricks 運行時間包含許多 連結庫,而且您可以新增自己的連結庫

存放庫

資料夾,其內容會藉由將它們同步至遠端 Git 存放庫,共同建立版本。 Databricks Repos 與 Git 整合,為您的專案提供來源和版本控制。

Experiment

MLflow 集合會 執行 來定型機器學習模型。 請參閱 使用 MLflow 實驗組織訓練回合。

Azure Databricks 介面

本節說明 Azure Databricks 除了 UI 之外,還支援用來存取資產的介面:API 和命令行 (CLI)。

REST API

Databricks 提供工作區和帳戶API 檔。

CLI

裝載於 GitHub 上的 開放原始碼 專案。 CLI 建置在 Databricks REST API 之上

資料管理

本節描述保存您執行分析和饋送機器學習演算法之數據的物件。

Databricks 文件系統 (DBFS)

Blob 存放區的文件系統抽象層。 它包含目錄,可以包含檔案(資料檔、連結庫和影像),以及其他目錄。 DBFS 會自動填入一些 數據集 ,您可以用來瞭解 Azure Databricks。 請參閱 什麼是 Databricks 檔案系統 (DBFS)?

Database

組織的數據物件集合,例如數據表或檢視表和函式,以便輕鬆存取、管理和更新數據物件。 請參閱 什麼是資料庫?

Table

結構化數據的表示。 您可以使用 Apache Spark SQL 和 Apache Spark API 來查詢數據表。 請參閱 什麼是數據表?

差異資料表

根據預設,在 Azure Databricks 中建立的所有數據表都是 Delta 數據表。 差異數據表是以 Delta Lake 開放原始碼 項目為基礎,這是雲端物件存放區上高效能 ACID 數據表記憶體的架構。 Delta 數據表會將資料儲存為雲端物件記憶體上的檔案目錄,並將數據表元數據註冊至目錄和架構內的中繼存放區。

深入瞭解 品牌為 Delta 的技術。

Metastore

元件,儲存數據倉儲中各種數據表和數據分割的所有結構資訊,包括數據行和數據行類型資訊、讀取和寫入數據所需的串行化程式和還原串行化程式,以及儲存數據的對應檔案。 請參閱 什麼是中繼存放區?

每個 Azure Databricks 部署都有可供所有叢集存取的中央 Hive 中繼存放區,以保存數據表元數據。 您也可以選擇使用現有的 外部 Hive 中繼存放區

視覺效果

執行查詢結果的圖形化表示。 請參閱 Databricks 筆記本中的視覺效果。

計算管理

本節說明在 Azure Databricks 中執行計算所需的概念。

Cluster

執行筆記本和作業的一組計算資源和組態。 叢集有兩種類型:所有用途和作業。 請參閱 計算

  • 您可以使用 UI、CLI 或 REST API 來建立 所有用途的叢集 。 您可以手動終止並重新啟動所有用途的叢集。 多個使用者可以共用這類叢集,以執行共同作業的互動式分析。
  • 當您在新作業叢集上執行作業時,Azure Databricks 作業排程器會建立作業叢集,並在作業完成時終止叢集。 您無法重新啟動作業叢集。

集區

一組閑置且現成可用的實例,可減少叢集啟動和自動調整時間。 連結至集區時,叢集會從集區配置其驅動程式和背景工作節點。 請參閱 集區組態參考

如果集區沒有足夠的閑置資源來容納叢集的要求,集區會藉由從實例提供者配置新的實例來擴充。 當連結的叢集終止時,所使用的實例會傳回集區,並可由不同的叢集重複使用。

Databricks Runtime

在 Azure Databricks 所管理的叢集上執行的一組核心元件。 請參閱 Compute.* Azure Databricks 具有下列運行時間:

  • Databricks Runtime 包含 Apache Spark,但也新增了一些元件和更新,可大幅改善巨量數據分析的可用性、效能和安全性。
  • databricks Runtime for 機器學習 建置在 Databricks Runtime 上,並提供預先建置的機器學習基礎結構,與 Azure Databricks 工作區的所有功能整合。 其中包含多個熱門連結庫,包括 TensorFlow、Keras、PyTorch 和 XGBoost。

工作流程

開發及執行資料處理管線的架構:

  • 作業:非互動式機制,可立即或排程執行筆記本或連結庫。
  • Delta Live Tables:建置可靠、可維護及可測試數據處理管線的架構。

請參閱 Azure Databricks 工作流程簡介。

[工作負載]

Azure Databricks 會識別兩種受不同 定價 配置的工作負載類型:數據工程(作業)和數據分析(所有用途)。

  • 數據工程:Azure Databricks 作業排程器為每個工作負載建立的作業叢集執行 [自動化] 工作負載。
  • 數據分析 :在全用途叢集執行 (互動式) 工作負載。 互動式工作負載通常會在 Azure Databricks 筆記本內執行命令。 不過,在現有的所有用途叢集上執行作業也會被視為互動式工作負載。

執行內容

每個支援程式設計語言的 read-eval-print 循環 (REPL) 環境狀態。 支援的語言包括 Python、R、Scala 和 SQL。

機器學習

Azure Databricks 上的 機器學習 是一種整合式端對端環境,其中包含實驗追蹤、模型定型、功能開發和管理,以及功能與模型服務的受控服務。

實驗

用於追蹤機器學習模型開發的組織主要單位。 請參閱 使用 MLflow 實驗組織訓練回合。 實驗會組織、顯示及控制對模型定型程式代碼個別記錄回合的存取。

功能存放區

功能的集中式存放庫。 請參閱 什麼是功能存放區? 功能存放區可讓您跨組織共用和探索功能,同時確保相同的功能計算程式代碼用於模型定型和推斷。

模型和模型登錄

已在模型登錄中註冊的定型機器學習或深度學習模型

SQL

SQL REST API

介面,可讓您自動化 SQL 物件上的工作。 請參閱 SQL API

儀表板​​

數據視覺效果和評論的呈現。 請參閱 Databricks SQL 儀錶板

SQL 查詢

本節說明在 Azure Databricks 中執行 SQL 查詢所需的概念。