創建和管理目錄

這篇文章展示了如何在Unity Catalog中創建和管理目錄。目錄包含模式(數據庫),模式包含表和視圖。

需求

  • 您必須是Databricks metastore管理員或已被授予metastore上的CREATE CATALOG特權

  • 您的Databricks帳戶必須在優質及以上計劃

  • 你必須有一個統一目錄metastore鏈接到工作區在這裏執行目錄創建。

  • 計算資源用於運行筆記本或Databricks SQL創建目錄的數據庫必須使用符合Unity catalog的訪問模式。

創建目錄

要創建目錄,可以使用數據資源管理器或SQL命令。

  1. 登錄到與metastore鏈接的工作空間。

  2. 點擊數據圖標數據

  3. 單擊創建目錄按鈕。

  4. (可選)指定數據存放的位置管理表將在目錄中存儲。

    隻有當您不希望此目錄中的托管表存儲在為metastore配置的默認根存儲位置中時,才在此處指定位置。看到創建一個Unity Catalog metastore

    指定的路徑必須在外部位置配置中定義,並且必須具有創建管理存儲外部位置上的特權。您還可以使用該路徑的子路徑。看到管理外部位置和存儲憑證

  5. 為您的目錄分配權限。看到Unity Catalog特權和安全對象

  6. 點擊保存

  1. 在筆記本或Databricks SQL編輯器中運行以下SQL命令。括號中的項目是可選的。替換占位符值:

    • < catalog_name >:目錄的名稱。

    • < location_path >:可選的。如果希望此目錄中的托管表存儲在不同於為metastore配置的默認位置的位置,則提供存儲位置路徑。類型中必須定義此路徑外部位置配置,你必須有創建管理存儲外部位置配置上的特權。您可以使用外部位置配置中定義的路徑或子路徑(換句話說,“s3: / /部門/金融”s3: / /部門/金融/產品的)。要求Databricks運行時11.3及以上。

    • < >的評論:可選描述或其他注釋。

    創建目錄如果存在<catalog_name>管理位置' < location_path >”評論<評論>];

    例如,創建一個名為例子

    創建目錄如果存在例子
  2. 為目錄分配特權。看到Unity Catalog特權和安全對象

  1. 在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符值:

    • < catalog_name >:目錄的名稱。

    • < location_path >:可選的。如果希望此目錄中的托管表存儲在不同於為metastore配置的默認位置的位置,則提供存儲位置路徑。類型中必須定義此路徑外部位置配置,你必須有創建管理存儲外部位置配置上的特權。您可以使用外部位置配置中定義的路徑或子路徑(換句話說,“s3: / /部門/金融”s3: / /部門/金融/產品的)。要求Databricks運行時11.3及以上。

    • < >的評論:可選注釋。

    火花sql"CREATE CATALOG [IF NOT EXISTS]  [MANAGED LOCATION ''] [COMMENT < COMMENT >]"

    例如,創建一個名為例子

    火花sql"創建目錄如果不存在的例子"

    參數說明請參見創建目錄

  2. 為目錄分配特權。看到Unity Catalog特權和安全對象

  1. 在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符值:

    • < catalog_name >:目錄的名稱。

    • < location_path >:可選的。如果希望此目錄中的托管表存儲在不同於為metastore配置的默認位置的位置,則提供存儲位置路徑。類型中必須定義此路徑外部位置配置,你必須有創建管理存儲外部位置配置上的特權。您可以使用外部位置配置中定義的路徑或子路徑(換句話說,“s3: / /部門/金融”s3: / /部門/金融/產品的)。要求Databricks運行時11.3及以上。

    • < >的評論:可選注釋。

    圖書館SparkRsql"CREATE CATALOG [IF NOT EXISTS]  [MANAGED LOCATION ''] [COMMENT < COMMENT >]"

    例如,創建一個名為例子

    圖書館SparkRsql"創建目錄如果不存在的例子"
  2. 為目錄分配特權。看到Unity Catalog特權和安全對象

  1. 在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符值:

    • < catalog_name >:目錄的名稱。

    • < location_path >:可選的。如果希望此目錄中的托管表存儲在不同於為metastore配置的默認位置的位置,則提供存儲位置路徑。類型中必須定義此路徑外部位置配置,你必須有創建管理存儲外部位置配置上的特權。您可以使用外部位置配置中定義的路徑或子路徑(換句話說,“s3: / /部門/金融”s3: / /部門/金融/產品的)。要求Databricks運行時11.3及以上。

    • < >的評論:可選注釋。

    火花sql"CREATE CATALOG [IF NOT EXISTS]  [MANAGED LOCATION ''] [COMMENT < COMMENT >]"

    例如,創建一個名為例子

    火花sql"創建目錄如果不存在的例子"
  2. 為目錄分配特權。看到Unity Catalog特權和安全對象

創建目錄時,會自動創建兩個模式(數據庫):默認的而且information_schema

方法創建目錄Databricks Terraform提供商而且databricks_catalog。可以通過使用檢索有關目錄的信息databricks_catalogs

下一個步驟

現在你可以向目錄中添加模式(數據庫)

刪除目錄

要刪除(或刪除)目錄,可以使用數據資源管理器或SQL命令。要刪除目錄,您必須是其所有者。

必須刪除目錄中的所有模式information_schema在刪除目錄之前。這包括自動創建的默認的模式。

  1. 登錄到與metastore鏈接的工作空間。

  2. 點擊數據圖標數據

  3. 數據窗格的左側,單擊要刪除的目錄。

  4. 在詳細信息窗格中,單擊左側的三點菜單創建數據庫按鈕並選擇刪除

  5. 刪除目錄對話框中,單擊刪除

在筆記本或Databricks SQL編輯器中運行以下SQL命令。括號中的項目是可選的。替換占位符< catalog_name >

參數說明請參見刪除目錄

如果你使用下降目錄沒有級聯選項時,必須刪除目錄中的所有模式information_schema才能刪除目錄。這包括自動創建的默認的模式。

下降目錄如果存在<catalog_name>限製|級聯

例如,刪除名為疫苗以及它的模式:

下降目錄疫苗級聯

在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符< catalog_name >

參數說明請參見刪除目錄

如果你使用下降目錄沒有級聯選項時,必須刪除目錄中的所有模式information_schema才能刪除目錄。這包括自動創建的默認的模式。

火花sql"DROP CATALOG [IF EXISTS]  [RESTRICT | CASCADE]"

例如,刪除名為疫苗以及它的模式:

火花sql“DROP目錄疫苗級聯”

在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符< catalog_name >

參數說明請參見刪除目錄

如果你使用下降目錄沒有級聯選項時,必須刪除目錄中的所有模式information_schema才能刪除目錄。這包括自動創建的默認的模式。

圖書館SparkRrsql"DROP CATALOG [IF EXISTS]  [RESTRICT | CASCADE]"

例如,刪除名為疫苗以及它的模式:

圖書館SparkRsql“DROP目錄疫苗級聯”

在筆記本中運行以下SQL命令。括號中的項目是可選的。替換占位符< catalog_name >

參數說明請參見刪除目錄

如果你使用下降目錄沒有級聯選項時,必須刪除目錄中的所有模式information_schema才能刪除目錄。這包括自動創建的默認的模式。

火花sql"DROP CATALOG [IF EXISTS]  [RESTRICT | CASCADE]"

例如,刪除名為疫苗以及它的模式:

火花sql“DROP目錄疫苗級聯”