Visão geral do descarregamento de dados¶
Similar ao carregamento de dados, o Snowflake suporta a exportação em massa (ou seja, descarregamento) de dados de uma tabela de banco de dados em arquivos de texto simples delimitados.
Neste tópico:
Processo de descarregamento em massa¶
O processo de descarregamento de dados em arquivos é o mesmo que o processo de carregamento, exceto no sentido inverso:
- Etapa 1:
Use o comando COPY INTO <local> para copiar os dados da tabela do banco de dados Snowflake em um ou mais arquivos em um estágio externo ou Snowflake.
- Etapa 2:
Baixe o arquivo do estágio:
A partir de um estágio do Snowflake, use o comando GET para baixar o(s) arquivo(s) de dados.
No S3, utilize as interfaces/ferramentas fornecidas pelo Amazon S3 para obter o(s) arquivo(s) de dados.
No Azure, utilize as interfaces/ferramentas fornecidas pelo Microsoft Azure para obter o(s) arquivo(s) de dados.
Descarregamento em massa usando consultas¶
O Snowflake suporta especificar uma instrução SELECT em vez de uma tabela no comando COPY INTO <local>. Os resultados da consulta são gravados em um ou mais arquivos como especificado no comando e o(s) arquivo(s) são armazenados no local especificado (interno ou externo).
Consultas SELECT em instruções COPY suportam toda a sintaxe e semântica de consultas SQL do Snowflake, incluindo cláusulas JOIN, o que permite o download de dados de várias tabelas.
Descarregamento em massa em um arquivo ou vários¶
O comando COPY INTO <local> fornece uma opção de cópia (SINGLE) para descarregar dados em um único arquivo ou em vários arquivos. O padrão é SINGLE = FALSE (ou seja, descarregar em vários arquivos).
O Snowflake atribui a cada arquivo um nome único. O caminho de localização especificado para o comando pode conter um prefixo de nome de arquivo que é atribuído a todos os arquivos de dados gerados. Se um prefixo não for especificado, o Snowflake prefixa os nomes dos arquivos gerados com data_
.
O Snowflake acrescenta um sufixo que garante que cada nome de arquivo seja único em todos os threads de execução paralela; por exemplo, data_stats_0_1_0
.
Ao descarregar dados em vários arquivos, use a opção de cópia MAX_FILE_SIZE para especificar o tamanho máximo de cada arquivo criado.
Descarregamento particionado de dados¶
O comando COPY INTO <local> inclui uma opção de cópia PARTITION BY para descarregamento particionado de dados em estágios.
A capacidade de particionar dados durante a operação de descarregamento permite uma variedade de casos de uso, como fazer Snowflake transformar dados para saída em um data lake. Além disso, o particionamento dos dados descarregados em uma estrutura de diretório no armazenamento em nuvem pode aumentar a eficiência com que ferramentas de terceiros consomem os dados.
A opção de cópia PARTITION BY aceita uma expressão pela qual a operação de descarregamento particiona as linhas da tabela em arquivos separados descarregados no estágio especificado.
Tarefas para descarregar dados usando o comando COPY¶
Para obter mais informações sobre as tarefas associadas ao descarregamento de dados, consulte: