Unity Catalog GA 版本資訊
重要
此文件已淘汰,且可能未更新。 不再支援此內容中提及的產品、服務或技術。 請參閱什麼是 Unity Catalog?。
2022 年 8 月 25 日
Unity Catalog 現已在 Azure Databricks 正式發行。
本文描述自 GA 以來 Unity 目錄的版本資訊。 主要著重於自公開預覽以來新增至 Unity 目錄的功能和更新。 如需 Unity 目錄的目前資訊,請參閱 Unity 目錄是什麼?。 如需描述自 GA 以來 Unity 目錄更新的版本資訊,請參閱 Azure Databricks 平台版本資訊和 Databricks Runtime 版本資訊及相容性。
中繼存放區限制和資源配額
截至 2022 年 8 月 25 日
- 您的 Azure Databricks 帳戶在每個區域中只能有一個中繼存放區
- 中繼存放區最多可以有 1000 個目錄。
- 目錄最多可以有 10,000 個結構描述。
- 結構描述最多可以有 10,000 個資料表。
如需目前的 Unity 目錄配額,請參閱資源配額。
GA 上支援的儲存體格式
截至 2022 年 8 月 25 日:
- 所有受控 Unity 目錄資料表都會使用 Delta Lake 儲存資料
- 外部 Unity 目錄資料表和外部位置支援 Delta Lake、JSON、CSV、Avro、Parquet、ORC 和文字資料。
如需目前的 Unity 目錄支援表格格式,請參閱檔案格式支援。
從帳戶主控台管理 Unity 目錄資源
使用 Azure Databricks 帳戶主控台 UI,以進行:
- 管理中繼存放區生命週期 (建立、更新、刪除及檢視 Unity 目錄管理的中繼存放區)
- 指派和移除工作區的中繼存放區
支援的叢集類型和 Databricks Runtime 版本
Unity 目錄需要執行 Databricks Runtime 11.1 或更新版本叢集。 所有 SQL 倉儲計算版本預設都支援 Unity 目錄。
舊版 Databricks Runtime 支援 Unity 目錄的預覽版本。 在舊版 Databricks Runtime 上執行的叢集不支援所有 Unity 目錄 GA 特性和功能。
當您建立新的叢集時,Unity 目錄需要下列其中一種存取模式:
- 共用
- 語言:SQL 或 Python
- 可由多個使用者共用的安全叢集。 叢集使用者會完全隔離,因此他們看不到彼此的資料和認證。
- 單一使用者
- 語言:SQL、Scala、Python、R
- 安全叢集,可由指定的單一使用者專用。
如需叢集存取模式的詳細資訊,請參閱存取修飾詞。
如需更新 Databricks Runtime 版本中 Unity 目錄功能的相關資訊,請參閱這些版本的版本資訊 。
系統資料表
information_schema
完全支援 Unity 目錄資料資產。 每個中繼存放區都包含一個目錄,稱為 system
,其中包含範圍為 information_schema
的中繼存放區。 請參閱資訊結構描述。 您可以使用 information_schema
找到下列問題的答案:
「計算每個目錄的資料表數目」
SELECT table_catalog, count(table_name)
FROM system.information_schema.tables
GROUP BY 1
ORDER by 2 DESC
「顯示過去 24 小時內已變更的所有資料表」
SELECT table_name, table_owner, created_by, last_altered, last_altered_by, table_catalog
FROM system.information_schema.tables
WHERE datediff(now(), last_altered) < 1
結構化串流支援
Unity 目錄現在支援結構化串流工作負載。 如需詳細資訊和限制,請參閱 限制。
另請參閱透過結構化串流使用 Unity 目錄。
SQL 函式
Unity 目錄現在完全支援使用者定義的 SQL 函式。 如需如何建立和使用 SQL UDF 的詳細資訊,請參閱 CREATE FUNCTION (SQL 和 Python)。
Unity 目錄中外部位置的 SQL 語法
現在外部位置的 Spark SQL 中支援標準資料定義和資料定義語言命令,包括下列內容:
CREATE | DROP | ALTER | DESCRIBE | SHOW EXTERNAL LOCATION
您也可以使用 SQL 管理 GRANT
及檢視具有 、REVOKE
和 SHOW
外部位置的權限。 請參閱外部位置。
範例語法:
CREATE EXTERNAL LOCATION <your-location-name>
URL `<your-location-path>'
WITH (CREDENTIAL <your-credential-name>);
GRANT READ FILES, WRITE FILES, CREATE EXTERNAL TABLE ON EXTERNAL LOCATION `<your-location-name>`
TO `finance`;
GA 上的 Unity 目錄限制
自 2022 年 8 月 25 日起,Unity 目錄有下列限制。 如需目前的限制,請參閱 限制。
- 使用機器學習執行階段的 Scala、R 和工作負載僅支援使用單一使用者存取模式的叢集。 這些語言中的工作負載不支援針對資料列層級或資料行層級安全性使用動態檢視。
- 使用 Unity 目錄作為複製的來源或目標時,不支援淺層複製。
- Unity 目錄資料表不支援貯體。 如果您執行命令來嘗試在 Unity 目錄中建立貯體資料表,則會擲回例外狀況。
- 如果某些叢集存取 Unity 目錄,而其他叢集則無法從多個區域的工作區寫入相同的路徑或 Delta Lake 資料表,可能會導致效能不可靠。
- 只有 Delta 資料表才支援 DataFrame 寫入至 Unity 目錄作業的覆寫模式,不適用於其他檔案格式。 使用者必須具有對父結構描述的
CREATE
權限,並且必須是現有物件的擁有者。 - 串流目前有下列限制:
- 在使用共用存取模式的叢集中不受支援。 針對串流工作負載,您必須使用單一使用者存取模式。
- 尚不支援非同步檢查點。
- 在 Databricks Runtime 11.2 版和更舊版本上,針對所有用途或作業叢集持續超過 30 天的串流查詢將會擲回例外狀況。 針對長時間執行的串流查詢,請設定自動作業重試或使用 Databricks Runtime 11.3 和更新版本。
- 目前不支援從差異即時資料表管線參考 Unity Catalog 資料表。
- 先前在工作區中建立的群組無法用於 Unity Catalog GRANT 陳述式。 這是為了確保跨工作區的群組檢視保持一致。 若要在 GRANT 陳述式中使用群組,請在帳戶主控台中建立群組,並更新主體或群組管理的任何自動化 (例如 SCIM、Okta 和 Microsoft Entra ID 連接器以及 Terraform),以參考帳戶端點而不是工作區端點。
GA 的 Unity 目錄可用性區域
自 2022 年 8 月 25 日起,Unity 目錄可在下列區域中使用。 如需目前支援的區域清單,請參閱 Azure Databricks 區域。
canadacentral
centralus
francecentral
germanywestcentral
japaneast
norwayeast
southafricanorth
swedencentral
switzerlandnorth
switzerlandwest
uaenorth
westcentralus
westus3
australiaeast
brazilsouth
centralindia
eastus
eastus2
koreacentral
northcentralus
northeurope
southeastasia
ukwest
westeurope
westus