Compartilhar via


Clonar tabela no Microsoft Fabric

Aplica-se a: Warehouse no Microsoft Fabric

O Microsoft Fabric oferece a capacidade de criar clones quase instantâneos de cópia zero com custos mínimos de armazenamento.

  • Os clones de tabela facilitam processos de desenvolvimento e teste criando cópias de tabelas em ambientes inferiores.
  • Os clones de tabela fornecem relatórios consistentes e duplicação de cópia zero de dados para cargas de trabalho analíticas e modelagem e teste de machine learning.
  • Os clones de tabela fornecem a capacidade de recuperação de dados no caso de uma versão com falha ou dados corrompidos, retendo o estado anterior dos dados.
  • Clones de tabela ajudam a criar relatórios históricos que refletem o estado dos dados como eles existiam a partir de um momento específico no passado.
  • Os clones de tabela pontuais podem preservar o estado dos dados em pontos específicos da empresa.

Você pode usar os comandos do T-SQL CREATE TABLE AS CLONE OF para criar um clone de tabela. Para ver um tutorial, confira Tutorial: Clonar tabelas usando o T-SQL ou Tutorial: Clonar tabelas no portal do Fabric.

Você também pode consultar dados em um depósito conforme eram exibidos anteriormente, usando a sintaxe T-SQL OPTION. Para obter mais informações, consulte Consultar dados como existiam no passado.

O que é um clone de cópia zero?

Um clone de cópia zero cria uma réplica da tabela copiando os metadados, enquanto ainda referencia os mesmos arquivos de dados no OneLake. Os metadados são copiados enquanto os dados subjacentes da tabela armazenados como arquivos parquet não são copiados. A criação de um clone é semelhante à criação de uma tabela em um Warehouse no Microsoft Fabric.

Clone de tabela no Data Warehouse do Synapse

Criação de um clone de tabela

Em um warehouse, um clone de uma tabela pode ser criado quase instantaneamente usando T-SQL simples. Um clone de uma tabela pode ser criado dentro ou entre esquemas em um warehouse.

O clone de uma tabela pode ser criado com base em:

  • Um momento no tempo atual: o clone é baseado no estado atual da tabela.

  • Um momento no tempo passado: o clone é baseado em um momento no tempo de até sete dias no passado. O clone da tabela contém os dados conforme apareceram em um momento passado desejado. No setor, esse recurso é conhecido como "viagem no tempo". A nova tabela é criada com um carimbo de data/hora baseado em UTC. Para obter exemplos, consulte Clonar tabela a partir de um momento passado no tempo ou CREATE TABLE AS CLONE OF.

Você também pode clonar um grupo de tabelas de uma só vez. Isso pode ser útil para clonar um grupo de tabelas relacionadas no mesmo ponto anterior no tempo. Para ver um exemplo, confira Clonar várias tabelas de uma só vez.

Você também pode consultar dados de tabelas conforme eram exibidos anteriormente, usando o recurso Viagem no tempo no depósito.

Retenção do histórico de dados

O warehouse preserva e mantém automaticamente o histórico de dados por sete dias de calendário, permitindo que clones sejam feitos em um momento no tempo. Todas as inserções, atualizações e exclusões feitas no data warehouse são mantidas por sete dias.

Não há limite para o número de clones criados dentro e entre esquemas.

Separado e independente

Após a criação, um clone de tabela será uma cópia independente e separada dos dados de sua origem.

  • As alterações feitas por meio de DML ou DDL na origem da tabela de clones não são refletidas na tabela de clones.
  • Da mesma forma, as alterações feitas por meio de DDL ou DML no clone da tabela não são refletidas na origem da tabela de clones.

Permissões para criar um clone de tabela

As seguintes permissões são necessárias para criar um clone de tabela:

  • Os usuários com funções de espaço de trabalho de Administrador, Membro ou Colaborador podem clonar as tabelas no workspace. A função de espaço de trabalho de Visualizador não pode criar um clone.
  • A permissão SELECT é necessária em todas as linhas e colunas da origem do clone da tabela.
  • O usuário deve ter a permissão CREATE TABLE no esquema em que o clone da tabela será criado.

Exclusão de um clone de tabela

Devido à sua existência autônoma, tanto a tabela original quanto os clones podem ser excluídos sem restrições ou limitações. Depois que um clone é criado, ele permanece existente até ser excluído pelo usuário.

  • Os usuários com funções de espaço de trabalho de Administração, Membro ou Contribuidor podem excluir o clone da tabela no espaço de trabalho.
  • Os usuários que têm permissões ALTER SCHEMA no esquema no qual reside o clone de tabela podem excluir o clone da tabela.

Herança de clone de tabela

Os objetos descritos aqui estão incluídos no clone da tabela:

  • A tabela de clone herda a segurança do SQL no nível do objeto da tabela de origem do clone. Como as funções de espaço de trabalho fornecem acesso de leitura por padrão, a permissão DENY pode ser definida no clone da tabela, se desejado.

  • A tabela de clones herda a segurança em nível de linha (RLS) e a máscara dinâmica de dados da origem da tabela de clones.

  • Todos os atributos que existem na tabela de origem são herdados pelo clone da tabela, seja o clone criado dentro do mesmo esquema ou em esquemas diferentes em um warehouse.

  • As restrições de chave primária e exclusiva definidas na tabela de origem são herdadas pelo clone da tabela.

  • Um log delta somente leitura é criado para cada clone de tabela gerado no Warehouse. Os arquivos de dados armazenados como arquivos parquet delta são somente leitura. Isso garante que os dados permaneçam sempre protegidos contra corrupção.

Cenários de clonagem de tabela

Considere a capacidade de clonar tabelas quase instantaneamente e com custos mínimos de armazenamento nos seguintes cenários benéficos:

Desenvolvimento e teste

Os clones de tabela permitem que desenvolvedores e os testadores experimentem, validem e refinem as tabelas sem afetá-las no ambiente de produção. O clone fornece um espaço seguro e isolado para conduzir atividades de desenvolvimento e teste de novos recursos, garantindo a integridade e a estabilidade do ambiente de produção. Use um clone de tabela para criar rapidamente uma cópia do ambiente de produção para fins de solução de problemas, experimentação, desenvolvimento e teste.

Relatórios consistentes, exploração de dados e modelagem de machine learning

Para acompanhar o cenário de dados em constante mudança, a execução frequente de trabalhos de ETL é essencial. Os clones de tabela dão suporte a essa meta, garantindo a integridade dos dados ao mesmo tempo em que fornecem a flexibilidade para gerar relatórios com base nas tabelas clonadas, enquanto o processamento em segundo plano está em andamento. Além disso, os clones de tabela permitem a reprodutibilidade de resultados anteriores para modelos de machine learning. Eles também facilitam insights valiosos habilitando a exploração e a análise de dados históricos.

Recuperação quase instantânea de baixo custo

Em caso de perda acidental de dados ou corrupção, clones de tabela existentes podem ser aproveitados para recuperar a tabela para seu estado anterior.

Arquivamento de dados

Para fins de auditoria ou conformidade, zero clones de cópia podem ser facilmente usados para criar cópias de dados como eles existiam em um determinado momento no passado. Alguns dados podem precisar ser arquivados para retenção de longo prazo ou conformidade legal. Clonar a tabela em vários momentos históricos garante que os dados sejam preservados em sua forma original.

Limitações

  • Atualmente, não há suporte para clones de tabela entre depósitos em um espaço de trabalho.
  • Atualmente, não há suporte para clones de tabela entre espaços de trabalho.
  • Não há suporte para clonagem de tabelas no ponto de extremidade de análise do SQL do Lakehouse.
  • Atualmente, não há suporte para o clone de um warehouse ou esquema.
  • Não é possível criar clones de tabela enviados antes do período de retenção de sete dias.
  • As alterações no esquema de tabela impedem que um clone seja criado antes da alteração do esquema da tabela.

Próxima etapa