Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Enviar dados do DynamoDB ao Amazon Redshift com o comando COPY

Modo de foco
Enviar dados do DynamoDB ao Amazon Redshift com o comando COPY - Amazon DynamoDB

O Amazon Redshift trabalha com o Amazon DynamoDB usando recursos avançados de business intelligence e uma poderosa interface baseada em SQL. Ao copiar os dados de uma tabela do DynamoDB para o Amazon Redshift, você pode realizar consultas de análise de dados complexas nesses dados, incluindo junções com outras tabelas em seu cluster do Amazon Redshift.

Em termos de throughput provisionado, uma operação de cópia de uma tabela do DynamoDB entra na contagem da capacidade de leitura dessa tabela. Depois que os dados são copiados, as consultas SQL no Amazon Redshift não afetam o DynamoDB de forma alguma. Isso ocorre porque as consultas agem em uma cópia dos dados do DynamoDB, em vez de no DynamoDB em si.

Para poder carregar dados de uma tabela do DynamoDB, você deve primeiro criar uma tabela do Amazon Redshift para servir como o destino dos dados. Lembre-se de que você está copiando dados de um ambiente NoSQL para um ambiente SQL, e que há determinadas regras em um ambiente que não se aplicam ao outro. Veja algumas das diferenças a considerar:

  • Os nomes de tabela do DynamoDB podem conter até 255 caracteres, incluindo os caracteres "." (ponto) e "-" (traço), e diferenciam maiúsculas e minúsculas. Os nomes de tabela do Amazon Redshift são limitados a 127 caracteres, não podem conter pontos ou traços e não diferenciam maiúsculas e minúsculas. Além disso, nomes de tabela não podem entrar em conflito com quaisquer palavras reservadas do Amazon Redshift.

  • O DynamoDB não é compatível com o conceito SQL de NULL. Você precisa especificar como o Amazon Redshift interpreta valores de atributo vazios ou em branco no DynamoDB, tratando-os como NULLs ou como campos vazios.

  • Os tipos de dados do DynamoDB não correspondem diretamente aos do Amazon Redshift. Você precisa garantir que cada coluna na tabela do Amazon Redshift seja do tipo e do tamanho corretos para acomodar os dados do DynamoDB.

Este é um exemplo do comando COPY do SQL do Amazon Redshift:

copy favoritemovies from 'dynamodb://my-favorite-movies-table' credentials 'aws_access_key_id=<Your-Access-Key-ID>;aws_secret_access_key=<Your-Secret-Access-Key>' readratio 50;

Neste exemplo, a tabela de origem no DynamoDB é my-favorite-movies-table. A tabela de destino no Amazon Redshift é favoritemovies. A cláusula readratio 50 regula a percentagem do throughput provisionado que é consumida; neste caso, o comando COPY usará não mais que 50% das unidades de capacidade de leitura provisionadas para my-favorite-movies-table. É altamente recomendável definir esse índice para um valor menor do que a média de throughput provisionado não utilizado.

Para obter instruções detalhadas sobre como carregar dados do DynamoDB no Amazon Redshift, consulte as seções a seguir no Guia do desenvolvedor de banco de dados do Amazon Redshift:

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.