建立結構描述
本文說明如何在 Unity Catalog 和舊版 Hive 中繼存放區中建立架構。
若要瞭解 Azure Databricks 中的架構,包括 Unity Catalog 和 Hive 中繼存放區中 schema 行為的比較,請參閱 Azure Databricks 中的架構為何?。
開始之前
若要在 Unity Catalog中建立 schema:
- 您必須將 Unity Catalog 中繼存放區 連結至您執行 schema 建立的工作區where。
- 您必須在 schema的父項 catalog上擁有
USE CATALOG
和CREATE SCHEMA
數據許可權。 中繼存放區系統管理員或 catalog 的擁有者都可以 grant 這些許可權。 如果您是中繼存放區系統管理員,您可以自行 grant 這些許可權。 - 若要為 schema中的 tables 和 volumes 指定選擇性的受控儲存位置,必須在 Unity Catalog中定義外部位置,而且您必須具有外部位置的
CREATE MANAGED STORAGE
許可權。 請參閱 在 Unity Catalog中指定受控儲存位置。 - 您用來執行筆記本來建立 schema 的叢集必須使用 Unity Catalog相容存取模式。 請參閱存取模式。 SQL 倉儲總是支援 Unity Catalog。
若要在 Hive 元數據庫中建立 schema:
- 所需的許可權取決於您是否使用 table 訪問控制。 請參閱Hive中繼存放區許可權和安全性實體物件(舊版)。
建立 schema
若要在 Unity Catalog中建立 schema,您可以使用 Catalog Explorer 或 SQL 命令。 若要在Hive中繼存放區中建立 schema,您必須使用 SQL 命令。
Catalog 探索者
- 請登錄到已連結到 Unity Catalog 中繼儲存區的工作區。
- 點選 Catalog。
- 在左側的 [Catalog] 窗格中,按下您要在 [catalog] 中建立的 schema。
- 在詳細資料窗格中,按 建立 schema。
- 提供 schema 名稱,並新增任何可協助使用者瞭解 schema用途的批註。
- (選擇性)指定受控儲存位置。
CREATE MANAGED STORAGE
需要目標外部位置的許可權。 請參閱在 Unity 中指定受控儲存位置,以及架構的受控位置。 - 按一下 [建立]。
- Grant 在 schema上的許可權。 請參閱 在 Unity Catalog中管理權限。
- 按一下 [檔案] 。
SQL
在筆記本或 SQL 查詢編輯器中執行下列 SQL 命令。 括弧中的項目是選擇性的。 您可以使用
SCHEMA
或DATABASE
。 替換佔位符 values:-
<catalog-name>
:schema的父 catalog 名稱。 如果您要在Hive中繼存放區中建立 schema,且您是在已啟用 Unity Catalog的工作區中,請使用hive_metastore
作為 catalog 名稱。 如果您的工作區未針對 Unity Catalog啟用,請勿指定 catalog。 -
<schema-name>
是 schema的名稱。 -
<location-path>
:受控儲存位置的選擇性路徑。 使用MANAGED LOCATION
搭配 Unity Catalog,使用LOCATION
搭配 Hive 中繼存放區。 在 Unity Catalog中,您必須擁有對所指定的路徑所在外部位置的CREATE MANAGED STORAGE
權限。 請參閱在 Unity 中指定受控儲存位置 ,與架構相關的受控位置。 -
<comment>
:選擇性描述或其他批注。 -
<property-key> = <property-value> [ , ... ]
: 選用。 Spark SQL 屬性與 values 至 set 用於 schema。
如需更詳細的參數描述,請參閱 CREATE SCHEMA。
CREATE { DATABASE | SCHEMA } [ IF NOT EXISTS ] <catalog-name>.<schema-name> [ MANAGED LOCATION '<location-path>' | LOCATION '<location-path>'] [ COMMENT <comment> ] [ WITH DBPROPERTIES ( <property-key = property_value [ , ... ]> ) ];
-
Grant 的權限在 schema上。 如需 Unity
許可權,請參閱 Unity 中的 管理許可權。
您也可以使用 Databricks Terraform 提供者 和 databricks_schema來建立 schema。 您可以使用 databricks_schemas 來擷取 schema 標識碼的 list
下一步
- 若要瞭解如何將 tables、views和 volumes 新增至您的 schema,請參閱 。什麼是 tables 和 views?,什麼是檢視?和 什麼是 Unity Catalogvolumes?。
- 若要瞭解如何將 AI 模型新增至您的
,請參閱在 Unity 中 管理模型生命週期。 - 若要瞭解如何檢視、update及卸除現有的架構,請參閱管理架構。