Commande COPY depuis Amazon DynamoDB - Amazon Redshift

Commande COPY depuis Amazon DynamoDB

Pour charger les données à partir d'une table DynamoDB existante, utilisez la clause FROM pour spécifier le nom de la table DynamoDB.

Important

Si la table DynamoDB ne réside pas dans la même région que votre cluster Amazon Redshift, vous devez utiliser le paramètre REGION pour spécifier la région dans laquelle les données se trouvent.

Syntaxe

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

Exemples

L'exemple suivant charge des données à partir d'une table DynamoDB.

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

Paramètres

FROM

Source des données à charger.

'dynamodb://table-name'

Nom de la table DynamoDB qui contient les données, par exemple, 'dynamodb://ProductCatalog'. Pour plus d'informations sur la manière dont les attributs DynamoDB sont mappés aux colonnes Amazon Redshift, consultez Chargement de données à partir d'une table Amazon DynamoDB.

Un nom de table DynamoDB est unique pour un compte AWS, qui est identifié par les informations d'identification d'accès AWS.

authorization

La commande COPY a besoin de l'autorisation pour accéder aux données dans une autre ressource AWS, y compris Amazon S3, Amazon EMR, Amazon DynamoDB et Amazon EC2. Vous pouvez fournir cette autorisation en faisant référence à un rôle AWS Identity and Access Management (IAM) qui est attaché à votre cluster (contrôle d'accès basé sur les rôles) ou en fournissant les informations d'identification d'accès d'un utilisateur IAM (contrôle d'accès basé sur la clé). Pour plus de sécurité et de flexibilité, nous recommandons d'utiliser contrôle d'accès basé sur les rôles IAM. Pour plus d'informations, consultez Paramètres d'autorisation.

READRATIO [AS] ratio

Pourcentage du débit alloué à la table DynamoDB à utiliser pour le chargement des données. READRATIO est nécessaire pour exécuter la commande COPY à partir de DynamoDB. Il ne peut pas être utilisé pour exécuter la commande COPY à partir d'Amazon S3. Nous vous recommandons vivement de définir le ratio avec une valeur inférieure au débit moyen alloué non utilisé. Les valeurs valides sont des nombres entiers compris entre 1 et 200.

Important

La définition de READRATIO sur 100 ou plus active Amazon Redshift pour tirer parti de l'intégralité du débit alloué de la table DynamoDB, ce qui dégrade considérablement les performances des opérations de lecture simultanées par rapport à la même table pendant la séance COPY. Le trafic d'écriture n'est pas affecté. Les valeurs supérieures à 100 sont autorisées pour résoudre les scénarios rares où Amazon Redshift ne respecte pas le débit alloué de la table. Si vous chargez les données de DynamoDB vers Amazon Redshift en permanence, pensez à organiser vos tables DynamoDB sous forme de série chronologique pour séparer le trafic en direct de l'opération COPY.

Paramètres facultatifs

Vous pouvez éventuellement spécifier les paramètres suivants avec la commande COPY à partir d'Amazon DynamoDB :

Paramètres non pris en charge

Vous ne pouvez pas utiliser les paramètres suivants avec la commande COPY à partir de DynamoDB :

  • Paramètres du format de toutes les données

  • ESCAPE

  • FILLRECORD

  • IGNOREBLANKLINES

  • IGNOREHEADER

  • NULL

  • REMOVEQUOTES

  • ACCEPTINVCHARS

  • MANIFEST

  • ENCRYPTED