Blogs

INÍCIO / Blogs / 3 maneiras de transferir dados do Amazon S3 para o Redshift

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.

3 maneiras de transferir dados do Amazon S3 para o Redshift

Javeria Rahim

Gerente Associado SEO

Outubro 3rd, 2023

Com mídias sociais, sensores e dispositivos IoT dando vida a cada dispositivo, geramos volumes de dados todos os dias. Mais dados são sempre boas notícias até que sua conta de armazenamento comece a aumentar e se torne difícil de gerenciar. Dados não estruturados devem aumentar para 175 bilhões de zettabytes até 2025. Embora os serviços em nuvem, como o Amazon S3, tenham permitido que as organizações gerenciem esses grandes volumes de dados quando se trata de análise, as soluções de armazenamento não são suficientes, e é aí que o data warehouse, como o Amazon Redshift, entra em cena.

As empresas geralmente usam os serviços da Amazon em conjunto para gerenciar custos e agilidade de dados ou usam o Amazon S3 como uma área de preparação enquanto criam um data warehouse no Amazon Redshift. No entanto, você só pode perceber o verdadeiro potencial de ambos os serviços se conseguir uma conexão perfeita do Amazon S3 para o Redshift. Astera Centerprise é uma solução sem código que pode ajudá-lo a integrar ambos os serviços sem problemas. Vamos explorar alguns benefícios do AWS Redshift e do Amazon S3 e como você pode conectá-los com facilidade.

Atualize a velocidade de consulta com o AWS Redshift

O AWS Redshift é um data warehouse em nuvem totalmente gerenciado implantado nos serviços da AWS. O data warehouse foi projetado para análises complexas e de alto volume e pode ser facilmente dimensionado para lidar com petabytes de dados. Ele permite que você extraia insights significativos de seus dados, para que você não deixe suas decisões para o seu instinto.

Há vários motivos pelos quais o AWS Redshift pode agregar valor real à sua arquitetura de dados:

  • Como um data warehouse em nuvem robusto, ele pode consultar grandes conjuntos de dados sem um atraso significativo.
  • Com uma interface como MYSQL, o data warehouse é fácil de usar, o que facilita adicioná-lo à sua arquitetura de dados
  • Como está na nuvem, você pode escalá-lo para cima e para baixo facilmente sem investir em hardware.

Embora o AWS Redshift possa atender às suas necessidades de análise de dados, ele não é uma solução ideal para armazenamento, principalmente devido à sua estrutura de preços. O AWS Redshift cobra você por hora. Assim, embora os custos comecem pequenos, eles podem aumentar rapidamente.

Amazon S3 para armazenamento

Se você está pensando em complementar Amazon S3 com o Redshift, a resposta simples é que você deveria. O Amazon S3 é uma opção de armazenamento rápida, escalável e econômica para organizações. Como armazenamento de objetos, é especialmente uma solução perfeita para armazenar dados não estruturados e dados históricos.

O armazenamento em nuvem oferece 99.9999% de durabilidade, para que seus dados estejam sempre disponíveis e seguros. Seus dados são replicados em várias regiões para backup e seus pontos de acesso multirregionais garantem que você não enfrente problemas de latência ao acessar os dados. Além disso, o S3 oferece recursos abrangentes de gerenciamento de armazenamento para ajudá-lo a manter um controle sobre seus dados.

Técnicas para mover dados do Amazon S3 para o Redshift   

Existem alguns métodos que você pode usar para enviar dados do Amazon S3 para o Redshift. Você pode aproveitar os comandos integrados, enviá-los pelos serviços da AWS, ou você pode usar uma ferramenta de terceiros, como Astera Centerprise.   

  1. Comando COPIAR: O comando COPY é um built-in in Redshift. Você pode usar isso para conectar o data warehouse com outras fontes sem a necessidade de outras ferramentas.  
  2. Serviços da AWS: existem vários serviços da AWS, como AWS Glue e AWS Data Pipeline, que podem ajudá-lo a transferir dados.      
  3. Astera Centerprise: É um fim a fim integração de dados plataforma que permite enviar dados de várias fontes para data warehouses populares e destinos de banco de dados de sua escolha, sem escrever uma única linha de código.      

Comando de cópia para mover dados do Amazon S3 para o Redshift   

O Amazon Redshift está equipado com uma opção que permite copiar dados do Amazon S3 para o Redshift com os comandos INSERT e COPY. O comando INSERT é melhor se você quiser adicionar uma única linha. O comando COPY aproveita o processamento paralelo, o que o torna ideal para carregar grandes volumes de dados.  

Você pode enviar dados para o Redshift por meio do comando COPY da seguinte maneira. No entanto, antes de fazer isso, há uma série de etapas que você precisa seguir:    

  1. Se você já tiver um cluster disponível, baixe os arquivos para o seu computador.    
  2. Crie um bucket no Amazon S3 e carregue os dados nele.  
  3. Crie tabelas.    
  4. Execute o comando COPIAR.  
Comando COPY do Amazon Redshift

Comando COPY do Amazon Redshift

A imagem acima mostra um comando básico. Você precisa fornecer um nome de tabela, lista de colunas, fonte de dados e credenciais. O nome da tabela no comando é sua tabela de destino. A lista de colunas especifica as colunas nas quais o Redshift irá mapear os dados. Este é um parâmetro opcional. A fonte de dados é a localização da sua fonte; Este é um campo obrigatório. Você também precisa especificar credenciais de segurança, formato de dados e comandos de conversão. O comando COPY permite apenas algumas conversões como EXPLICIT_IDS, FILLRECORD, NULL AS, TIME FORMAT, etc.  

No entanto, várias limitações estão associadas à movimentação de dados do Amazon S3 para o Redshift por meio desse processo. O comando COPY é melhor para inserção em massa. Se você deseja fazer upload de dados um por um, essa não é a melhor opção.    

A segunda limitação dessa abordagem é que ela não permite que você aplique nenhuma transformação aos conjuntos de dados. Você deve estar atento às conversões de tipo de dados que acontecem em segundo plano com o comando COPY.   

O comando COPY também restringe o tipo de fontes de dados que você pode transferir. Você só pode transferir JSON, AVRO e CSV. 

Mova dados do Amazon S3 para o Redshift com o AWS Glue  

Dados ETL com AWS Glue Dados ETL com AWS Glue

Dados ETL com AWS Glue

AWS Glue é um servidor Ferramenta ETL introduzido pela Amazon Web Services para mover dados entre os serviços da Amazon. Você pode usar Cola AWS para transferir dados de e para o AWS Redshift. A ferramenta ETL usa os comandos COPY e UNLOAD para obter o máximo rendimento. O AWS Glue usa o Amazon S3 como um estágio de preparação antes de carregá-lo no Redshift.  

Ao usar o AWS Glue, você precisa ter em mente uma coisa. O AWS Glue transmite credenciais de segurança temporárias quando você cria um trabalho. Essas credenciais expiram após uma hora e interrompem seus trabalhos no meio do caminho. Para resolver esse problema, você precisa criar uma função do IAM separada que possa ser associada ao cluster do Redshift.  

Você pode transferir dados com o AWS Glue da seguinte maneira:   

  1. Iniciar o cluster do AWS Redshift.  
  2. Criar um usuário de banco de dados para migração.  
  3. Crie uma função do IAM e dê a ela acesso ao S3 
  4. Anexe a função do IAM ao destino do banco de dados. 
  5. Adicionar um novo banco de dados no AWS Glue.  
  6. Adicionar novas tabelas no banco de dados do AWS Glue.  
  7. Forneça o local de origem do Amazon s3 e os detalhes da coluna da tabela.  
  8. Criar um trabalho no AWS Glue.  
  9. Especifique a função do IAM e o Amazon S3 como fontes de dados nos parâmetros.  
  10. Escolha a opção 'criar tabelas em seu destino de dados' e escolha JDBC para armazenamento de dados.  
  11. Executar trabalho do AWS Glue.   

Embora o AWS Glue possa fazer o trabalho para você, você precisa ter em mente as limitações associadas a ele. O AWS Glue não é uma ferramenta ETL completa. Além disso, você precisa escrever transformações em Python ou Scala. O AWS Glue também não permite testar transformações sem executá-las em dados reais. O AWS Glue oferece suporte apenas a conexões JSBC e S3 (CSV).   

Mova dados do Amazon S3 para o Redshift com o AWS Data Pipeline  

Transferir dados do Amazon S3 para o Redshift

Envie dados para o Amazon Redshift com AWS Data Pipeline

O AWS Data Pipeline é um serviço da Amazon criado especificamente que você pode usar para transferir dados entre outras fontes da Amazon, bem como fontes locais. Com o Data Pipeline, você pode criar pipelines de dados altamente confiáveis ​​e tolerantes a falhas.   

O processo contém nós de dados onde seus dados são armazenados, as atividades, trabalhos do EMR ou consultas SQL e um agendamento quando você deseja executar o processo. Assim, por exemplo, se você deseja enviar dados do Amazon S3 para o Redshift, você precisa: 

  •  Define um pipeline com S3DataNode,  
  • A Atividade do Hive para converter seus dados em .csv,  
  • RedshiftCopyActivity para copiar seus dados do S3 para o Redshift.   

Veja como você pode criar um pipeline de dados:   

  1. Crie um pipeline. Ele usa o modelo Copy to Redshift no console do AWS Data Pipeline.  
  2. Salve e valide seu pipeline de dados. Você pode salvá-lo a qualquer momento durante o processo. A ferramenta avisa se houver algum problema em sua carga de trabalho. 
  3. Ative seu pipeline e depois monitore.  
  4. Você pode excluir seu pipeline assim que a transferência for concluída.  

Mova dados do Amazon S3 para o Redshift com Astera Centerprise

Astera Centerprise oferece uma maneira mais fácil de enviar dados do Amazon S3 para o Redshift. A ferramenta sem código vem com conectividade nativa para bancos de dados e formatos de arquivo populares. Ele permite enviar dados de qualquer fonte para qualquer destino sem escrever uma única linha de código. Com Astera Centerprise, tudo o que você precisa fazer é arrastar e soltar os conectores no designer de pipeline de dados e começar a criar pipelines de dados rapidamente. A plataforma também vem com recursos visuais mapeamento de dados e uma interface de usuário intuitiva que oferece visibilidade completa de seus pipelines de dados.

Usar o Amazon S3 como uma área de preparo para o Amazon Redshift

Se você estiver usando o Amazon S3 como uma área de preparação para criar seu data warehouse no Amazon Redshift, Astera Centerprise oferece uma maneira fácil de enviar dados em massa. Aqui está como você pode fazer isso:

  1. Arraste e solte o destino do banco de dados no designer de pipeline de dados e escolha Amazon Redshift no menu suspenso e forneça suas credenciais para se conectar. Para usar o Amazon S3 como área de teste, basta clicar na opção e fornecer suas credenciais.
Amazon S3 para Redshift

Conectando-se ao Amazon Redshift em Astera Centerprise

  1. Depois de fazer isso, você também pode escolher o tamanho da inserção em massa. Por exemplo, se você tiver um Excel com um milhão de registros, poderá enviá-lo para Amazon RedShift em lotes de 10,000.
Amazon s3 para redshift

Selecionando o tamanho do lote para inserção em massa no Amazon S3

Enriqueça seus dados antes de enviá-los do Amazon S3 para o Redshift

Ao contrário do comando COPY, Astera Centerprise permite que você massageie seus dados antes de enviá-los para o Amazon Redshift, garantindo robustez gerenciamento de qualidade de dados. Astera Centerprise vem com transformações sofisticadas integradas que permitem que você manipule os dados da maneira que desejar. Se você deseja classificar seus dados, filtrá-los ou aplicar regras de qualidade de dados, você pode fazer isso com a extensa biblioteca de transformações.

O que faz o Astera Centerprise a escolha certa?

Embora existam outras alternativas, incluindo ferramentas da AWS que permitem enviar dados do Amazon S3 para o Redshift, Astera Centerprise oferece a maneira mais rápida e fácil de transferência. O sem código ferramenta de integração de dados é:

  1. Fácil de usar: Ele vem com uma curva de aprendizado mínima, que permite que até usuários iniciantes comecem a construir pipelines de dados em minutos
  2. Automatizado: Com seus recursos de agendamento de trabalho, você pode automatizar fluxos de trabalho inteiros com base em gatilhos baseados em tempo ou evento.
  3. Qualidade dos dados: A ferramenta vem com várias opções prontas para limpar, validar e criar perfil de seus dados, garantindo que apenas dados qualificados cheguem ao destino. Você também pode usar o construtor de expressão customizado para definir suas próprias regras.

Quer carregar dados do Amazon S3 para o Redshift? COMECE AGORA com Astera Centerprise 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