Custos de armazenamento para Time Travel e Fail-safe

As taxas de armazenamento são cobradas para manter os dados históricos durante os períodos de Time Travel e Fail-safe.

Neste tópico:

Uso e taxas de armazenamento

As taxas são calculadas para cada período de 24 horas (ou seja, 1 dia) a partir do momento em que os dados foram alterados. O número de dias de dados históricos é mantido com base no tipo de tabela e no período de retenção do Time Travel para a tabela.

Além disso, o Snowflake minimiza a quantidade de armazenamento necessária para os dados históricos, mantendo apenas as informações necessárias para restaurar as linhas de tabela individuais que foram atualizadas ou excluídas. Como resultado, o uso do armazenamento é calculado como uma porcentagem da tabela alterada. Cópias completas das tabelas só são mantidas quando as tabelas são descartadas ou truncadas.

Tabelas temporárias e transitórias

Para ajudar a gerenciar os custos de armazenamento associados ao Time Travel e Fail-safe, o Snowflake fornece dois tipos de tabelas, temporária e transitória, que não incorrem nas mesmas taxas que as tabelas padrão (ou seja, permanentes):

  • As tabelas transitórias podem ter um período de retenção do Time Travel de 0 ou 1 dia.

  • As tabelas temporárias também podem ter um período de retenção do Time Travel de 0 ou 1 dia; no entanto, esse período de retenção termina assim que a tabela é descartada ou a sessão em que a tabela foi criada termina.

  • As tabelas transitórias e temporárias não têm período de Fail-safe.

Como resultado, as taxas adicionais máximas cobradas por esse tipo de tabela para o Time Travel e Fail-safe são limitadas a 1 dia. A tabela a seguir ilustra os diferentes cenários, com base no tipo de tabela:

Tipo de tabela

Período de retenção do Time Travel (dias)

Período do Fail-safe (dias)

Dados históricos mínimos e máximos mantidos (dias)

Permanente

0 ou 1 (para Snowflake Standard Edition)

7

7 , 8

0 para 90 (para Snowflake Enterprise Edition)

7

7 , 97

Transitória

0 ou 1

0

0 , 1

Temporária

0 ou 1

0

0 , 1

Considerações sobre o uso de tabelas temporárias e transitórias para gerenciar os custos de armazenamento

Ao escolher entre armazenar dados em tabelas permanentes, temporárias ou transitórias, considere o seguinte:

  • As tabelas temporárias são descartadas quando a sessão em que foram criadas termina. Os dados armazenados em tabelas temporárias não são recuperáveis depois que a tabela é descartada.

  • Dados históricos em tabelas transitórias não podem ser recuperados pelo Snowflake após o término do período de retenção do Time Travel. Use tabelas transitórias apenas para dados que você pode replicar ou reproduzir independentemente do Snowflake.

  • Tabelas de longa duração, tais como tabelas de fatos, devem sempre ser definidas como permanentes para garantir que sejam totalmente protegidas pelo Fail-safe.

  • Tabelas de curta duração (ou seja, <1 dia), tais como tabelas de trabalho ETL, podem ser definidas como transitórias para eliminar custos do Fail-safe.

  • Se o tempo de inatividade e o tempo necessário para recarregar dados perdidos forem fatores, tabelas permanentes, mesmo com seus custos adicionais de Fail-safe, podem oferecer uma solução geral melhor do que tabelas transitórias.

Nota

O tipo padrão para tabelas é permanente. Para definir uma tabela como temporária ou transitória, você deve especificar explicitamente o tipo durante a criação da tabela:

CREATE [ OR REPLACE ] [ TEMPORARY | TRANSIENT ] TABLE <nome> ...

Para obter mais informações, consulte CREATE TABLE.

Migração de dados de tabelas permanentes para tabelas transitórias

A migração de dados de tabelas permanentes para tabelas transitórias envolve a execução das seguintes tarefas:

  1. Use CREATE TABLE … AS SELECT para criar e preencher as tabelas transitórias com os dados das tabelas originais e permanentes.

  2. Aplique às novas tabelas todos os privilégios de controle de acesso concedidos nas tabelas originais. Para obter mais informações sobre controle de acesso, consulte Visão geral do controle de acesso.

  3. Use DROP TABLE para apagar as tabelas originais.

  4. Opcionalmente, use ALTER TABLE para renomear as novas tabelas para corresponderem às tabelas originais.