COPY do Amazon DynamoDB - Amazon Redshift

COPY do Amazon DynamoDB

Para carregar dados de uma tabela do DynamoDB existente, use a cláusula FROM para especificar o nome da tabela do DynamoDB.

Importante

Se a tabela do DynamoDB não residir na mesma região que o cluster do Amazon Redshift, use o parâmetro REGION para especificar a região na qual os dados estão localizados.

Sintaxe

FROM 'dynamodb://table-name' authorization READRATIO ratio | REGION [AS] 'aws_region' | optional-parameters

Exemplos

O exemplo a seguir carrega dados de uma tabela do DynamoDB.

copy favoritemovies from 'dynamodb://ProductCatalog' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole' readratio 50;

Parâmetros

FROM

A origem dos dados a serem carregados.

'dynamodb://table-name'

O nome da tabela do DynamoDB que contém os dados; por exemplo, 'dynamodb://ProductCatalog'. Para obter detalhes sobre como os atributos do DynamoDB são mapeados para colunas do Amazon Redshift, consulte Carregar dados de uma tabela do Amazon DynamoDB.

O nome de uma tabela do DynamoDB é exclusivo de uma conta da AWS, identificada por credenciais de acesso da AWS.

autorização

O comando COPY precisa de autorização para acessar dados em outro recurso da AWS, inclusive em Amazon S3, Amazon EMR, Amazon DynamoDB e Amazon EC2. É possível conceder essa autorização referenciando um perfil do AWS Identity and Access Management (IAM) anexado ao cluster (controle de acesso baseado em perfil) ou fornecendo as credenciais de acesso de um usuário (controle de acesso baseado em chave). Para mais segurança e a flexibilidade, recomendamos usar o controle de acesso baseado em função do IAM. Para obter mais informações, consulte Parâmetros de autorização.

READRATIO [AS] ratio

A porcentagem do throughput provisionado da tabela do DynamoDB a ser usada no carregamento de dados. READRATIO é obrigatório para COPY do DynamoDB. Ele não pode ser usado com COPY do Amazon S3. É altamente recomendável definir a proporção como um valor menor que o throughput provisionado não usado médio. Os valores válidos são números inteiros de 1 a 200.

Importante

A definição de READRATIO como 100 ou mais permite que o Amazon Redshift consuma todo o throughput provisionado da tabela do DynamoDB, o que afeta gravemente a performance de operações de leitura simultâneas na mesma tabela durante a sessão de COPY. O tráfego de gravação não é afetado. Os valores maiores que 100 têm permissão para solucionar problemas em cenários raros quando o Amazon Redshift deixar de atender ao throughput provisionado da tabela. Se você carregar dados do DynamoDB no Amazon Redshift continuamente, considere organizar as tabelas do DynamoDB como uma série temporal para separar o tráfego ao vivo da operação COPY.

Parâmetros opcionais

Você também pode especificar os seguintes parâmetros com COPY do Amazon DynamoDB:

Parâmetros incompatíveis

Você não pode usar os seguintes parâmetros com COPY do DynamoDB:

  • Todos os parâmetros de formato de dados

  • ESCAPE

  • FILLRECORD

  • IGNOREBLANKLINES

  • IGNOREHEADER

  • NULL

  • REMOVEQUOTES

  • ACCEPTINVCHARS

  • MANIFEST

  • ENCRYPTED