Recuperação de dados arquivados¶
Nota
As políticas de ciclo de vida de armazenamento não estão disponíveis atualmente em regiões governamentais.
Leia os dados arquivados usando o comando CREATE TABLE … FROM ARCHIVE OF.
Por exemplo, a seguinte instrução cria uma nova tabela a partir de linhas arquivadas em que o valor na coluna event_timestamp está entre 15 e 20 de janeiro de 2023.
CREATE TABLE my_table
FROM ARCHIVE OF my_source_table AS st
WHERE st.event_timestamp BETWEEN '01/15/2023' AND '01/20/2023';
Para obter detalhes de sintaxe e descrições de parâmetros, consulte CREATE TABLE … FROM ARCHIVE OF na documentação de CREATE TABLE.
Nota
O uso deste comando requer o privilégio OWNERSHIP na tabela de origem.
A especificação de definições de coluna, políticas, tags ou outras restrições é incompatível. O Snowflake recupera automaticamente o esquema da tabela, as políticas, as tags e as restrições da tabela de origem.
A cláusula WHERE é obrigatória. A leitura de dados arquivados é custosa e deve ser realizada com pouca frequência. Filtrar os resultados usando a cláusula WHERE ajuda a minimizar os custos, garantindo que o Snowflake leia apenas os dados necessários do armazenamento de arquivo.
Para estimar o número de arquivos que o Snowflake recuperará do armazenamento de arquivos, execute o comando EXPLAIN antes dessa operação. A saída inclui uma operação
createTableFromArchiveDatae exibeARCHIVE OF <table>na colunaobjectspara a operação TableScan. Para obter mais informações, consulte Estimar os custos de recuperação com EXPLAIN.Para ver um histórico da recuperação de dados do armazenamento de arquivos, use o Exibição ARCHIVE_STORAGE_DATA_RETRIEVAL_USAGE_HISTORY.
Para recuperar dados da camada COLD de armazenamento de arquivos, o Snowflake deve primeiro restaurar os arquivos do armazenamento em nuvem externo. Esse processo pode levar até 48 horas.
Para oferecer suporte a esse processo, defina os seguintes parâmetros adequadamente:
STATEMENT_TIMEOUT_IN_SECONDS deve ser de pelo menos 48 horas.
ABORT_DETACHED_QUERY deve ser FALSE.
As operações de restauração da camada de armazenamento COLD aceitam no máximo um milhão de arquivos por operação de restauração.
Se você cancelar uma operação CREATE TABLE que recupera dados do armazenamento de arquivos, ainda poderá incorrer em custos de recuperação.
Estimar os custos de recuperação com EXPLAIN¶
Use o comando EXPLAIN para estimar quantos arquivos o Snowflake recuperará do armazenamento de arquivos.
A saída do comando inclui o seguinte:
Uma operação
createTableFromArchiveDatana colunaoperation.ARCHIVE OF <table>na colunaobjectspara a operação TableScan.O número de partições que serão recuperadas na coluna
assignedPartitionspara a operação de arquivamento TableScan. Este valor indica o número de partições que o Snowflake restaurará da camada fria para recuperar os dados do armazenamento de arquivos.
Por exemplo:
EXPLAIN
CREATE TABLE my_table
FROM ARCHIVE OF my_source_table AS st
WHERE st.event_timestamp BETWEEN '01/15/2023' AND '01/20/2023';