Blogs

INÍCIO / Blogs / Como carregar dados do AWS S3 para o Snowflake

Tabela de conteúdo
O Automatizado, Nenhum código Pilha de dados

Saiba como Astera O Data Stack pode simplificar e agilizar o gerenciamento de dados da sua empresa.

Como carregar dados do AWS S3 para Snowflake

Usman Hasan Khan

Estrategista de conteúdo

Março 21st, 2024

De acordo com o um estudo do Statista, o mercado de armazenamento em nuvem foi avaliado em US$ 90.17 bilhões em 2022 e atingirá um valor de US$ 472.47 bilhões até 2030. Esses números indicam uma mudança crescente em direção a soluções de computação em nuvem e armazenamento de dados.

Um cenário típico no gerenciamento de dados moderno envolve a transferência de dados do armazenamento em nuvem para plataformas de computação baseadas em nuvem. O Simple Storage Service (S3) da Amazon está entre os favoritos opções para o primeiro, e as empresas confiam na Snowflake para o último. 

Como resultado, as transferências de dados do S3 para o Snowflake são comuns para empresas que desejam beneficiar do sinergia do armazenamento escalonável do S3 e dos recursos de armazenamento de dados de alto nível do Snowflake. 

Este blog discute que o Processo de carregamento de dados S3 para Snowflake e explicaçãoHá duas maneiras de configurá-lo para que você possa escolher a certa. Vamos iniciar. 

Visão geral do Amazon S3 

Amazon S3 é um serviço de armazenamento de objetos da Amazon Web Services (AWS). É apoiado pela infraestrutura de armazenamento escalável que suporta a enorme rede global de comércio eletrônico da Amazon. 

Como um serviço de armazenamento em nuvem baseado na Web e de alta velocidade, o Amazon S3 cria backups on-line de dados e aplicativos na AWS. É adequado para atender aos requisitos de armazenamento de dados de qualquer escopo de diferentes setores. 

Integração com outros serviços AWS: Você pode vincular o S3 a outros serviços de segurança e monitoramento da AWS, como Macie, CloudTrail e CloudWatch. Vincular diretamente os serviços do fornecedor ao S3 também é uma opção. 

Transferência de dados fácil e segura: Você pode transferir dados para S3 pela Internet pública por meio de APIs S3. O Amazon S3 Transfer Acceleration pode ajudar você a transferir dados mais rapidamente, e o AWS Direct Connect cria uma conexão privada entre o S3 e seu data center. 

Casos de uso: O Amazon S3 é uma boa opção de armazenamento para organizações de diversos tamanhos, graças aos seus recursos de escalabilidade, segurança, disponibilidade e desempenho. Os casos de uso típicos do S3 incluem o seguinte: 

  • Armazenamento de dados 
  • Arquivamento de dados 
  • Armazenamento de documentos 
  • Backup de dados 
  • Armazenamento de arquivos de log 
  • Entrega de software 
  • Site de hospedagem 
  • Lagos de dados e armazéns de dados

Visão geral do floco de neve 

Snowflake é um software como serviço (SaaS) totalmente gerenciado, iniciado em 2012 e lançado em 2014. Ele oferece uma única plataforma para lidar com requisitos de armazenamento de dados, data lakes, ciência de dados, aplicação e desenvolvimento de dados e engenharia de dados dos usuários. Ele também oferece suporte ao compartilhamento e consumo seguro de dados compartilhados ou em tempo real. 

Uma imagem representando a arquitetura do Snowflake.

Esta solução de armazenamento de dados baseada em nuvem simplifica o armazenamento, processamento e análise de dados estruturados e semiestruturados. A separação entre computação e armazenamento do Snowflake o distingue dos data warehouses convencionais. Isso permite alocar recursos para diferentes funções de forma independente, com base em seus requisitos. 

Aqui estão alguns recursos principais do Snowflake: 

Sem hardware e software limitado: Como uma verdadeira oferta de SaaS, o Snowflake não é sobrecarregado por hardware virtual ou físico que você teria que instalar ou configurar. Também não há praticamente nenhum software que você precise configurar. 

Manutenção sem complicações: Snowflake realiza todas as tarefas de manutenção, atualizações, ajustes e gerenciamento – aliviando a carga administrativa dos usuários. 

Agnosticismo do provedor de nuvem: Snowflake é conhecido por ser independente do provedor de nuvem. Está disponível na AWS, Azure e GCP e mantém sua funcionalidade e experiência do usuário final em cada um deles.

Como carregar dados do S3 para o Snowflake? 

Existem duas maneiras de carregar dados do S3 para o Snowflake: manual ou automatizado. 

Uma imagem mostrando dois tipos de métodos para transferir dados do AWS S3 para o Snowflake.

Abaixo, bem discutir a transferência manual de dados usando o comando COPY INTO e a transferência automatizada de dados usando uma ferramenta de integração de terceiros, como Astera. 

Transferência manual de dados do S3 para o Snowflake

As etapas a seguir estão envolvidas na configuração manual de uma transferência de dados entre S3 e Snowflake: 

1. Configurando o bucket Amazon S3 

  • Se você ainda não tem um bucket do Amazon S3, crie um onde seus dados sejam armazenados. 
  • Verifique se o Snowflake tem as permissões necessárias para acessar este bucket. Talvez seja necessário configurar uma função do AWS Identity and Access Management (IAM), conceder a ela as permissões necessárias e anexá-la à conta Snowflake.

2. Configurando o estágio externo do Snowflake 

  • Faça login em sua conta do floco de neve. 
  • Crie um estágio externo usando a interface da web do Snowflake ou comandos SQL. 
  • Mencione o caminho do bucket do Amazon S3 como o local do estágio externo. 

3. Crie uma mesa de floco de neve 

  • Defina um esquema de tabela Snowflake que corresponda à estrutura de dados dos arquivos do Amazon S3. 
  • Faça uma tabela no Snowflake para os dados transferidos do S3. 

4. Configure a integração do Snowflake 

  • Crie uma Integração floco de neve objeto para estabelecer uma conexão entre o Snowflake e o Amazon S3. 
  • Especifique os detalhes necessários, como a chave de acesso da AWS, a chave secreta da AWS e o estágio externo associado ao bucket S3. 

5. Conceda as permissões necessárias 

  • Certifique-se de que o usuário ou função do Snowflake tenha as permissões necessárias para acessar o estágio externo e carregar dados na tabela do Snowflake. 

6. Carregar dados no Snowflake 

  • Use o comando COPY INTO no Snowflake para carregar dados do estágio externo (Amazon S3) na tabela do Snowflake. 
  • Especifique o formato do arquivo de origem, a tabela de destino e outras opções relevantes. 

7. Monitore e solucione problemas 

  • Monitore o processo de transferência de dados para garantir operações tranquilas e sem erros. 
  • Verifique os logs do Snowflake e do Amazon S3 em busca de mensagens de erro e solucione problemas em caso de erros. 

Se desejar automatizar a transferência de dados do S3 para o Snowflake, você pode configurar um agendamento usando o agendador de tarefas do Snowflake ou uma ferramenta de agendamento de terceiros. Defina uma programação para executar o comando COPY INTO para carregar novos dados do Amazon S3 no Snowflake em intervalos especificados. 

Transferências de dados AWS S3 para Snowflake. Simplificado.

Aproveite o controle total sobre seus pipelines AWS S3 para Snowflake sem escrever uma única linha de código. Tentar Astera por duas semanas e experimente a diferença por si mesmo.

Comece meu teste GRATUITO

As limitações da transferência manual de dados do AWS S3 para o Snowflake 

Carregar dados manualmente do AWS S3 para o Snowflake pode parecer simples, mas ainda tem certas limitações. Abaixo estão alguns dos principais que você deve conhecer: 

  • Custos de transferência de dados: A transferência de grandes volumes de dados do S3 para o Snowflake pode aumentar rapidamente os custos de transferência de dados. Esses custos podem aumentar com o tempo e tornar-se proibitivamente caros. 
  • Latência da rede: A latência da rede pode afetar as velocidades de transferência de dados em uma transferência S3 – Snowflake. Isso depende principalmente da distância geográfica entre sua instância Snowflake e a região AWS com seu bucket S3 e sua conectividade de rede. 
  • Segurança de dados: Tanto a AWS quanto o Snowflake oferecem mecanismos para garantir a transferência segura de dados, como funções IAM e criptografia HTTPS. No entanto, protocolos mal configurados ou lacunas nos métodos de segurança podem expor informações confidenciais durante o trânsito. 
  • Compatibilidade de formato de dados: Snowflake oferece suporte a formatos como JSON, CSV, Avro e Parquet. No entanto, você pode enfrentar problemas se seus dados S3 estiverem em um formato que o Snowflake não suporta diretamente – isso exigirá pré-processamento ou transformação dos dados antes do carregamento. 
  • Escalabilidade e simultaneidade: Snowflake está equipado com poderosos recursos de simultaneidade e escalabilidade. No entanto, é mais sensato otimizar os processos de carregamento de dados e a alocação de recursos para mitigar gargalos de desempenho, carregamento de dados mais lento e serviços interrompidos. 
  • Tratamento e monitoramento de erros: Os processos de carregamento de dados estão sujeitos a erros devido a problemas de rede, incompatibilidade de formato de dados ou falta de permissões necessárias. Você terá que implementar mecanismos abrangentes de tratamento de erros para identificar e mitigar tais problemas imediatamente. 
  • Conformidade Regulatória: Com base na natureza dos seus dados e nos requisitos regulamentares aplicáveis, garantindo a conformidade com os padrões de governança de dados, como o Regulamento Geral de Proteção de Dados (GDPR), a Lei de Portabilidade e Responsabilidade de Seguros de Saúde (HIPAA) e o Padrão de Segurança de Dados da Indústria de Cartões de Pagamento (PCI DSS). pode exigir um esforço substancial de sua parte. 

Transferência automatizada de dados do AWS S3 para Snowflake usando Astera 

1. Navegando em arquivos na nuvem

Primeiro, observe que Você pode navegar por arquivos na nuvem em uma fonte Excel ou qualquer outra fonte de arquivo em Astera. 

Configurando um objeto ExcelSource em Astera

2. Configurando conexões em nuvem

Selecionando o 'Navegue pelos arquivos da nuvem, a opção levará Você para um navegador onde Você pode configurar conexões na nuvem. Aqui, Você você pode configurar o Amazon S3 selecionando 'Adicionar nova conexão, e inserir credenciais, conforme visto abaixo. 

Configurando uma conexão em nuvem em Astera

Configurando uma conexão em nuvem em Astera.

3. Escolhendo o arquivo certo

Em seguida, você vai escolha o arquivo Você deseja acessar no AWS S3. 

Escolhendo um arquivo para acessar no AWS S3 usando Astera.

O arquivo selecionado aparecerá no caminho do arquivo de origem da seguinte forma: 

O arquivo selecionado pelo usuário aparecendo no caminho do arquivo de origem em Astera

4. Verifique o layout do arquivo

Quando Você verifique o layout do arquivo em Astera, é assim vai mostrar-se: 

Verificando o layout de um arquivo em Astera.

Depois de configurado, o objeto de origem ficará assim: 

Um objeto de origem configurado em Astera.

5. Configurando o floco de neve

Em seguida, você vai configure o Snowflake configurando um Destino do banco de dados objeto com credenciais do Snowflake: 

Um objeto Destino do Banco de Dados em Astera

Junto com a conexão Snowflake, Você opcionalmente, você pode configurar uma área de teste. Na imagem abaixo, que o Bucket Amazon S3 serve como área de preparação. 

Configurando um objeto Snowflake Destination em Astera.

Vocês agora configurei o Snowflake como o objeto de destino e os votos de Dataflow aparecerá como mostrado abaixo: 

Um objeto de destino Snowflake configurado em Astera

6. Mapeamento, visualização de saída e execução do fluxo de dados

Em seguida, você vai criar mapeamentos a partir do Objeto de origem (S3) para o Objeto de destino (Floco de neve): 

Objetos de origem (S3) e destino (floco de neve) mapeados em Astera.

'Visualização de saída, para o Objeto de destino será parecido com isto: 

'Visualizar saída' para um objeto de destino durante a transferência de dados do S3 para o Snowflake em Astera.

Por último, quando Você execute o Dataflow usando o 'Iniciar fluxo de dados, botão, Astera gravará os dados no destino, concluindo a transferência de dados do S3 para o Snowflake. 

Transferências manuais de dados do S3 para Snowflake versus transferências automatizadas em Astera 

Como visto acima, configurar transferências manuais de dados do S3 para Snowflake é uma opção válida. No entanto, o processo pode ser complicado, especialmente para utilizadores não técnicos. Para recapitular, estas são as etapas envolvidas: 

  • Configuração do intervalo S3 
  • Criação de função IAM 
  • Criação de palco externo no Snowflake 
  • Configurando o esquema da tabela e criando uma tabela no Snowflake 
  • Criação de um objeto de integração Snowflake 
  • Carregando dados do S3 na tabela Snowflake usando o comando COPY INTO 
  • Monitoramento e solução de problemas do processo de transferência de dados conforme necessário 

Em contraste, Astera simplifica as transferências de dados do S3 para o Snowflake com sua interface intuitiva, funcionalidade de arrastar e soltar e facilidade de uso. Ele permite criar e automatizar transferências de dados de maneira conveniente com apenas alguns cliques, independentemente de sua proficiência técnica. 

Conclusão 

Astera agiliza o gerenciamento de dados ponta a ponta para uma variedade de setores. É poderoso, solução pronta para empresas permite que você projete, implante e automatize pipelines do S3 para Snowflake — sem necessidade de codificação. 

Descubra como você pode usar Astera para transformar seus processos de transferência de dados. Entre em contato com nossa equipe or inicie o seu teste gratuito hoje! 

Você pode gostar
As 7 principais ferramentas de agregação de dados em 2024
Estrutura de governança de dados: o que é? Importância, Pilares e Melhores Práticas
As melhores ferramentas de ingestão de dados em 2024
Considerando Astera Para suas necessidades de gerenciamento de dados?

Estabeleça conectividade sem código com seus aplicativos corporativos, bancos de dados e aplicativos em nuvem para integrar todos os seus dados.

Vamos nos conectar agora!
vamos conectar