Unity 目錄中的物件儲存生命週期

當你刪除 Unity 目錄 中可保護的物件 (透過目錄總管、SQL 等 DROP)時,會發生什麼事取決於物件類型和儲存類型。 本頁說明資料檔案生命週期、儲存計費,以及刪除後的復原選項。

儲存類型決定了資料檔案的處理方式

對於資料表和磁碟區,底層資料檔案會如何處理取決於該資產是受管理還是外部資產。 關於此區分的更多細節,請參閱 Unity 目錄中的管理資產與外部資產。

  • 管理資料表與卷:Unity 目錄控制儲存位置與資料檔案生命週期。 資料檔案存放於元儲存庫、目錄或結構層級定義的管理儲存位置。 當你刪除受管理的資料表或卷時,Unity Catalog 會透過多階段生命週期刪除底層的資料檔案。 託管儲存地點有兩種類型:

    • Azure Databricks 預設儲存:Azure Databricks 在你 Azure Databricks 帳號中配置和管理的物件儲存。
    • 客戶提供的託管儲存:在你雲端帳號中,設定於元儲存庫、目錄或結構層級的雲端儲存位置,Azure Databricks 會寫入並管理資料。

    兩種版本共享相同的資料檔案生命週期,但計費方式與刪除後檔案保留方式有所不同。 請參閱 Azure Databricks 上的受管理物件預設儲存與客戶提供儲存的差異。

  • 外部資料表與磁碟區:您可以控制儲存位置與生命週期。 當你刪除外部資料表或磁碟區時,Unity Catalog 會從中繼儲存庫移除元資料,但資料檔案仍留在你的雲端儲存空間。

  • 外部與聯邦目錄:資料位於另一個資料來源中(例如透過 Lakehouse Federation 連接的聯邦資料庫,或透過 Hive metastore federation 連接的 Hive 中繼資料存放區)。 Unity 目錄只儲存連線元資料。 當你刪除外部目錄時,Unity 目錄會移除連線的元資料。 來源系統的資料則不受影響。

對於其他可保護的物件(目錄、結構、檢視、函式、模型),刪除只會移除元資料——Unity 目錄沒有相關資料檔案可管理。 使用 CASCADE 刪除目錄或結構描述時,會移除其中包含的資料表和磁碟區,而各自會依前述受管理或外部的行為處理。

恢復已刪除的物件

你如何恢復已刪除的物件取決於物件類型。

物件類型 Recovery
表格、實體化視圖、串流表格 刪除後7天內使用 UNDROP 。 實體化的視圖與串流資料表必須是從 ETL 管線建立的,且該管線必須仍然存在。
目錄、結構描述、磁碟區、視圖、函數、模型 刪除後無法恢復。

警告

復原是時間有限且盡力而為。 只有在確認不再需要資料後,才刪除物件。 使用RESTRICT預設DROP CATALOGDROP SCHEMA選項,防止非空物件意外遞迴刪除。

刪除後受管理資料的生命週期

刪除受管理的資料表或卷並不會立即從雲端儲存中刪除資料檔案。 資料檔案會在復原視窗中保留,之後則永久刪除。

第一階段:恢復期

刪除後的 7 天內,Unity 目錄會保留軟刪除的資料,讓你能恢復該物件。 在此期間:

  • 使用 UNDROP SQL 指令來恢復資料表、實體化檢視和串流資料表。
  • Unity Catalog 會保留已刪除物件的中繼資料,且儲存費用仍會持續計費。

第二階段:清洗

當7天的回收窗口結束後,該物品將無法再被回收。 非同步清除程序會永久刪除資料檔案。 關於每個階段的儲存計費細節,請參見 刪除後的儲存計費。

Note

清除不會在恢復視窗結束時立即執行。 它可以在刪除後 7 天到大約 30 天內的任何時間點刪除資料檔案。 如果你追蹤雲端儲存容量回收的時間,刪除後最多可能需要 30 天。

Azure Databricks 上受控物件的預設儲存體與客戶提供的儲存體

受管理物件可以使用兩種類型的受管理儲存。 資料生命週期與 Unity Catalog 的清除行為相同,但帳單與清除後的檔案保留方式有所不同。

儲存體類型 檔案清理
Azure Databricks default storage (由 Azure Databricks 代表你管理) Unity Catalog 會在復原視窗結束後,透過非同步清除程序永久刪除資料檔案。
客戶提供的管理儲存( 您在元儲存庫、目錄或架構上設定的雲端儲存位置) Unity Catalog 會在復原視窗結束後,透過非同步清除程序永久刪除資料檔案。 你的雲端儲存政策(物件版本控制、軟刪除、生命週期規則)可能會在此之後繼續保留檔案。 你的雲端服務提供商會依照這些政策向你收取儲存費用。

欲了解更多關於 Azure Databricks 預設儲存的資訊,請參閱 Databricks 中的預設儲存。 要設定客戶提供的託管儲存,請參見 Unity 目錄中的「指定託管儲存位置」。

外部資料表與磁碟區

當你刪除外部資料表或外部磁碟區時,Unity Catalog 會從中繼資料存放區移除其中繼資料。 你雲端儲存中的資料檔案並未被刪除。 您的雲端服務供應商會根據您儲存桶的政策設定,持續向您收取儲存費用。

要移除檔案,請直接從雲端儲存中刪除。

外國與聯邦目錄

外國目錄包含參考外部資料來源的元資料。 當你刪除外部目錄時,Unity 目錄會移除連線的元資料。 來源系統中的資料不受影響。 Azure Databricks 不會向你收取來源系統中儲存體的費用;適用來源系統的計費方式。

刪除後的儲存體計費

下表總結了 Azure Databricks 與您的雲端供應商在每個階段的儲存計費方式。 Azure Databricks 只會在 Azure Databricks 預設儲存空間上收費,且只會在恢復期間計費——儲存帳單會在 7 天恢復期過後停止。 對於客戶提供的託管儲存和外部儲存,你的雲端服務提供商會直接向你收費。

儲存體類型 恢復窗口 第二階段清洗 清洗後
在 Azure Databricks 預設儲存體上管理 Azure Databricks 已計費 無法由客戶計費(帳單一旦恢復期過後停止計費) 不適用
在客戶提供的儲存空間上管理 雲端供應商帳單 雲端供應商帳單 由雲端供應商計費(受您儲存貯體的政策控管)
外部資料表與磁碟區 雲端服務提供者已計費(檔案未被刪除) 雲端供應商帳單 雲端供應商帳單
外國與聯邦目錄 不適用 不適用 不適用

在客戶提供的儲存裝置中刪除受管理物件後,你仍可能看到雲端供應商的儲存費用。 為了降低這些費用,請檢查你的儲存桶的物件版本設定、軟刪除和生命週期政策。

從目錄檔案總管中刪除物件

你可以在工作區 UI 的 Catalog Explorer 中刪除 Unity Catalog 物件。 本文所述的資料生命週期適用於你從目錄檔案總管刪除物件或執行 SQL DROP 語句。

刪除工作區會發生什麼事

預設情況下,刪除工作區不會自動刪除該工作區的預設 Unity 目錄。 若目錄被保留,其管理的資料表與卷仍保留,儲存計費則持續,直到目錄被移除為止。

Azure Databricks 提供強制刪除選項,會移除工作區目錄及其資料,作為工作區刪除的一部分。 請參見 強制刪除工作區目錄。 如果工作區目錄沒有被強制刪除,則在工作區刪除後仍會保留,必須手動丟棄。

關於工作區刪除的細節,請參見 「刪除工作區」。

其他資源