Ciclo de vida do armazenamento de objetos no Unity Catalog

Quando apagas um objeto seguro do Unity Catalog (via Catalog Explorer, SQL DROP, etc.), o que acontece depende do tipo de objeto e do tipo de armazenamento. Esta página descreve o ciclo de vida dos ficheiros de dados, a faturação de armazenamento e as opções de recuperação após a eliminação.

O tipo de armazenamento determina o que acontece aos ficheiros de dados

Para tabelas e volumes, o que acontece aos ficheiros de dados subjacentes depende de o ativo ser gerido ou externo. Para mais informações sobre esta distinção, veja Managed versus external assets no Unity Catalog.

  • Tabelas e volumes geridos: O Unity Catalog controla a localização de armazenamento e o ciclo de vida dos ficheiros de dados. Os ficheiros de dados ficam armazenados na localização de armazenamento gerido definida na metastore, no catálogo ou no esquema. Quando elimina uma tabela ou volume gerido, o Unity Catalog apaga os ficheiros de dados subjacentes ao longo de um ciclo de vida em várias fases. Os locais de armazenamento gerido existem em duas variantes:

    • Azure Databricks armazenamento predefinido: Armazenamento de objetos que o Azure Databricks fornece e gere na sua conta Azure Databricks.
    • Armazenamento gerido fornecido pelo cliente: Uma localização de armazenamento na cloud na sua conta cloud, configurada ao nível da metastore, catálogo ou esquema, onde o Azure Databricks escreve e gere os dados.

    Ambas as versões partilham o mesmo ciclo de vida dos ficheiros de dados, mas a faturação e a retenção de ficheiros após eliminação diferem. Consulte Objetos geridos no armazenamento predefinido do Azure Databricks versus armazenamento fornecido pelo cliente.

  • As tabelas externas e os volumes: Você controla o local de armazenamento e o ciclo de vida. Quando elimina uma tabela ou volume externo, o Unity Catalog remove os metadados da metastore, mas os ficheiros de dados permanecem na sua localização de armazenamento na cloud.

  • Catálogos externos e federados: Os dados estão armazenados noutra fonte de dados (como uma base de dados federada através do Lakehouse Federation, ou um metastore do Hive através da federação do metastore do Hive). O Unity Catalog contém apenas os metadados da ligação. Quando apagas um catálogo estrangeiro, o Unity Catalog remove os metadados de ligação. Os dados no sistema de origem não são afetados.

Para outros objetos protegidos (catálogos, esquemas, vistas, funções, modelos), a eliminação remove apenas metadados — não existem ficheiros de dados associados para o Unity Catalog gerir. Ao eliminar um catálogo ou esquema com CASCADE, são removidas as tabelas e os volumes que contém, cada um de acordo com o respetivo comportamento como gerido ou externo acima.

Recuperar um objeto eliminado

A forma como recuperas um objeto eliminado depende do tipo de objeto.

Tipo de objeto Recovery
Tabelas, vistas materializadas, tabelas em fluxo Utilize UNDROP até 7 dias após a eliminação. As vistas materializadas e as tabelas de fluxo têm de ter sido criadas a partir de um pipeline de ETL, e esse pipeline tem de continuar a existir.
Catálogos, esquemas, volumes, vistas, funções, modelos Não pode ser recuperado após a eliminação.

Warning

A recuperação é limitada no tempo e exige o melhor esforço. Apague um objeto apenas depois de confirmar que já não precisa dos dados. Utilize a opção RESTRICT (predefinida por omissão) em DROP CATALOG e DROP SCHEMA para evitar a eliminação recursiva acidental de objetos não vazios.

Ciclo de vida dos dados geridos após uma eliminação

Eliminar uma tabela ou volume gerido não elimina imediatamente os ficheiros de dados do armazenamento na cloud. Os ficheiros de dados são mantidos durante uma janela de recuperação e eliminados permanentemente posteriormente.

Fase 1: Janela de recuperação

Durante 7 dias após a eliminação, o Unity Catalog mantém os dados de soft delete para que possas recuperar o objeto. Durante este período:

  • Use o comando SQL UNDROP para recuperar tabelas, vistas materializadas e tabelas de streaming.
  • O Unity Catalog mantém os metadados do objeto descartado, e a faturação de armazenamento continua.

Fase 2: Purga

Quando termina a janela de recuperação de 7 dias, o objeto já não pode ser recuperado. O Unity Catalog elimina permanentemente os ficheiros de dados dentro de 48 horas. Para detalhes de faturação de armazenamento em cada fase, consulte Faturação de armazenamento após uma eliminação.

Objetos geridos no armazenamento predefinido do Azure Databricks versus armazenamento fornecido pelo cliente

Os objetos geridos podem usar dois tipos de armazenamento gerido. O ciclo de vida dos dados e o comportamento de purga do Catálogo Unity são os mesmos, mas a faturação e a retenção de ficheiros após a purga diferem.

Tipo de armazenamento Purga de ficheiros
Azure Databricks default storage (gerido por Azure Databricks em teu nome) O Unity Catalog apaga permanentemente os ficheiros de dados dentro de 48 horas após o fim da janela de recuperação.
Armazenamento gerido fornecido pelo cliente (um local de armazenamento na nuvem que configurou na metastore, catálogo ou esquema) O Unity Catalog apaga permanentemente os ficheiros de dados dentro de 48 horas após o fim da janela de recuperação. As suas políticas de armazenamento na cloud (versionamento de objetos, eliminação suave, regras do ciclo de vida) podem reter ficheiros a partir deste ponto. O seu fornecedor de cloud cobra-lhe pelo armazenamento de acordo com essas políticas.

Para mais informações sobre o armazenamento padrão do Azure Databricks, veja Armazenamento padrão no Databricks. Para configurar armazenamento gerido fornecido pelo cliente, consulte Especificar uma localização de armazenamento gerido no Unity Catalog.

Tabelas e volumes externos

Quando elimina uma tabela externa ou um volume externo, o Unity Catalog remove os metadados da metastore. Os ficheiros de dados no teu armazenamento na cloud não são eliminados. O seu fornecedor de cloud continua a cobrar-lhe pelo armazenamento de acordo com as políticas do seu bucket.

Para remover os ficheiros, apague-os diretamente do armazenamento na cloud.

Catálogos estrangeiros e federados

Um catálogo estrangeiro contém metadados que referenciam uma fonte de dados externa. Quando apagas um catálogo estrangeiro, o Unity Catalog remove os metadados de ligação. Os dados no sistema de origem não são afetados. O Azure Databricks não lhe cobra pelo armazenamento no sistema de origem; aplica-se a faturação do sistema de origem.

Faturação de armazenamento após uma eliminação

A tabela seguinte resume como a Azure Databricks e o seu fornecedor de cloud faturam o armazenamento em cada fase. O Azure Databricks só cobra pelo armazenamento no armazenamento predefinido do Azure Databricks e apenas durante o período de recuperação — a cobrança do armazenamento deixa de ser efetuada assim que decorrer o período de recuperação de 7 dias. Para armazenamento gerido fornecido pelo cliente e armazenamento externo, o seu fornecedor de cloud cobra-lhe diretamente.

Tipo de armazenamento Janela de recuperação Purga de Fase 2 Após a purga
Gerido no armazenamento predefinido do Azure Databricks Azure Databricks faturado Não faturável ao cliente (a faturação termina quando a janela de recuperação expira) Não aplicável
Gerido em armazenamento fornecido pelo cliente Fornecedor de serviços na cloud faturado Fornecedor de serviços na cloud faturado Fornecedor de cloud faturado (de acordo com as políticas do seu bucket)
Tabelas e volumes externos O fornecedor de nuvem é faturado (os ficheiros não são eliminados) Fornecedor de serviços na cloud faturado Fornecedor de serviços na cloud faturado
Catálogos estrangeiros e federados Não aplicável Não aplicável Não aplicável

Depois de eliminar um objeto gerido no armazenamento fornecido pelo cliente, pode continuar a ver encargos de armazenamento do seu fornecedor de cloud. Para reduzir estas cobranças, verifique as políticas de versionamento de objetos, eliminação suave e ciclo de vida do seu bucket.

Eliminar um objeto do Explorador de Catálogos

Podes eliminar objetos do Catálogo Unity do Explorador de Catálogos na interface do espaço de trabalho. O ciclo de vida dos dados descrito neste artigo aplica-se quer elimine um objeto do Explorador de Catálogos ou execute uma instrução SQL DROP .

O que acontece quando apagas um espaço de trabalho

Por predefinição, eliminar um espaço de trabalho não elimina automaticamente o catálogo predefinido do Unity Catalog associado ao espaço de trabalho. Se o catálogo for mantido, as suas tabelas e volumes geridos permanecem, e a faturação de armazenamento continua até que o catálogo seja retirado.

O Azure Databricks oferece uma opção de eliminação forçada que remove o catálogo da área de trabalho e os respetivos dados como parte da eliminação da área de trabalho. Veja Eliminar à força o catálogo do espaço de trabalho. Se o catálogo da área de trabalho não for eliminado forçadamente, será mantido após a eliminação da área de trabalho e terá de ser removido manualmente.

Para detalhes sobre a eliminação de espaços de trabalho, consulte Eliminar um espaço de trabalho.

Recursos adicionais