Exportation de données depuis un cluster de SQL base de données Aurora Postgre RDS S3 - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exportation de données depuis un cluster de SQL base de données Aurora Postgre RDS S3

Vous pouvez interroger les données d'un cluster de SQL base de données Aurora Postgre RDS et les exporter directement dans des fichiers stockés dans un compartiment Amazon S3. Pour ce faire, vous devez d'abord installer l'extension Aurora Postgre SQL RDS aws_s3. Cette extension vous fournit les fonctions que vous utilisez pour exporter les résultats des requêtes vers Amazon S3. Vous trouverez ci-dessous comment installer l'extension et comment exporter des données vers Amazon S3.

Vous pouvez exporter à partir d'un provisionné ou d'un Aurora Serverless v2 Instance de base de données. Ces étapes ne sont pas prises en charge pour Aurora Serverless v1.

Note

L'exportation intercompte vers Amazon S3 n'est pas prise en charge.

Toutes les versions actuellement disponibles d'Aurora Postgre SQL prennent en charge l'exportation de données vers Amazon Simple Storage Service. Pour obtenir des informations détaillées sur les versions, consultez les SQLmises à jour d'Amazon Aurora Postgre dans les notes de publication d'Aurora SQL Postgre.

Si vous n'avez pas de compartiment configuré pour votre exportation, consultez les rubriques suivantes du Guide de l'utilisateur d'Amazon Simple Storage Service.

Par défaut, les données exportées d'Aurora Postgre SQL vers Amazon S3 utilisent le chiffrement côté serveur avec Clé gérée par AWS. Vous pouvez également utiliser une clé gérée par le client que vous avez déjà créée. Si vous utilisez le chiffrement par compartiment, le compartiment Amazon S3 doit être chiffré avec AWS Key Management Service (AWS KMS) touche (SSE-KMS). Actuellement, les compartiments chiffrés avec des clés gérées par Amazon S3 (SSE-S3) ne sont pas pris en charge.

Note

Vous pouvez enregistrer les données instantanées de base de données et de clusters de bases de données sur Amazon S3 à l'aide du AWS Management Console, AWS CLI, ou Amazon RDSAPI. Pour de plus amples informations, veuillez consulter Exportation de données d'instantanés de cluster de bases de données vers Amazon S3.

Installation de l'extension aws_s3

Avant de pouvoir utiliser Amazon Simple Storage Service avec votre cluster de SQL base de données Aurora Postgre, RDS vous devez installer l'aws_s3extension. Cette extension fournit des fonctions pour exporter des données depuis l'instance d'écriture d'un cluster de SQL base de données Aurora Postgre et vers un compartiment Amazon S3. Il fournit également des fonctions pour importer des données depuis un compartiment Amazon S3. Pour de plus amples informations, veuillez consulter Importation de données depuis Amazon S3 dans un cluster de SQL base de données Aurora Postgre RDS. L'extension aws_s3 dépend de certaines des fonctions d'aide de l'extension aws_commons, qui est installée automatiquement lorsque cela est nécessaire.

Pour installer l'extension aws_s3
  1. Utilisez psql (oupgAdmin) pour vous connecter à l'instance d'écriture de votre cluster de SQL base de données Aurora Postgre RDS en tant qu'utilisateur disposant de privilèges. rds_superuser Si vous avez conservé le nom par défaut pendant le processus d'installation, vous vous connectez en tant que postgres.

    psql --host=111122223333.aws-region.rds.amazonaws.com --port=5432 --username=postgres --password
  2. Pour installer l'extension, exécutez la commande suivante.

    postgres=> CREATE EXTENSION aws_s3 CASCADE; NOTICE: installing required extension "aws_commons" CREATE EXTENSION
  3. Pour vérifier que l'extension est installée, vous pouvez utiliser la métacommande psql \dx.

    postgres=> \dx List of installed extensions Name | Version | Schema | Description -------------+---------+------------+--------------------------------------------- aws_commons | 1.2 | public | Common data types across AWS services aws_s3 | 1.1 | public | AWS S3 extension for importing data from S3 plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language (3 rows)

Les fonctions d'importation de données depuis Amazon S3 et d'exportation de données vers Amazon S3 sont désormais disponibles.

Vérifiez que votre SQL version Aurora Postgre prend en charge les exportations vers Amazon S3

Vous pouvez vérifier que votre SQL version d'Aurora Postgre prend en charge l'exportation vers Amazon S3 à l'aide de la describe-db-engine-versions commande. L'exemple suivant vérifie si la version 10.14 peut être exportée vers Amazon S3.

aws rds describe-db-engine-versions --region us-east-1 \ --engine aurora-postgresql --engine-version 10.14 | grep s3Export

Si la sortie inclut la chaîne "s3Export", le moteur prend en charge les exportations Amazon S3. Sinon, le moteur ne les prend pas en charge.

Présentation de l'exportation de données vers Amazon S3

Pour exporter les données stockées dans une SQL base de données Aurora Postgre SQL RDS vers un compartiment Amazon S3, suivez la procédure suivante.

Pour exporter les SQL données Aurora Postgre SQL RDS vers S3
  1. Identifiez un chemin d'accès de fichier Amazon S3 à utiliser pour exporter des données. Pour de plus amples informations sur ce processus, veuillez consulter Spécification du chemin d'accès au fichier Amazon S3 vers lequel effectuer l'exportation.

  2. Fournissez une autorisation d'accès au compartiment Amazon S3.

    Pour exporter des données vers un fichier Amazon S3, autorisez le cluster de SQL base de données Aurora Postgre RDS à accéder au compartiment Amazon S3 que l'exportation utilisera pour le stockage. Cette opération comprend les étapes suivantes :

    1. Créez une IAM politique qui donne accès à un compartiment Amazon S3 vers lequel vous souhaitez exporter.

    2. Créez un IAM rôle.

    3. Attachez la politique que vous avez créée au rôle que vous avez créé.

    4. Ajoutez ce IAM rôle à votre de base de données.

    Pour de plus amples informations sur ce processus, veuillez consulter Configuration de l'accès à un compartiment Amazon S3.

  3. Identifiez une requête de base de données pour obtenir les données. Exportez les données de requête en appelant la fonction aws_s3.query_export_to_s3.

    Après avoir terminé les tâches de préparation précédentes, utilisez la fonction aws_s3.query_export_to_s3 pour exporter les résultats de requête vers Amazon S3. Pour de plus amples informations sur ce processus, veuillez consulter Exportation de données de requête à l'aide de la fonction aws_s3.query_export_to_s3.

Spécification du chemin d'accès au fichier Amazon S3 vers lequel effectuer l'exportation

Spécifiez les informations suivantes pour identifier l'emplacement dans Amazon S3 vers lequel vous souhaitez exporter des données :

  • Nom du compartiment – Un compartiment est un conteneur d'objets ou de fichiers Amazon S3.

    Pour de plus amples informations sur le stockage de données avec Amazon S3, veuillez consulter Créer un compartiment et Afficher un objet dans le Guide de l'utilisateur Amazon Simple Storage Service.

  • Chemin d'accès au fichier – Le chemin d'accès au fichier identifie l'emplacement de stockage de l'exportation dans le compartiment Amazon S3. Le chemin d'accès au fichier se compose des éléments suivants :

    • Préfixe de chemin facultatif qui identifie un chemin d'accès à un dossier virtuel.

    • Préfixe de fichier qui identifie un ou plusieurs fichiers à stocker. Les exportations les plus volumineuses sont stockées dans plusieurs fichiers, chacun ayant une taille maximale d'environ 6 Go. Les noms de fichiers supplémentaires ont le même préfixe de fichier mais en ajoutant _partXX. XX représente 2, puis 3, et ainsi de suite.

    Par exemple, un chemin d'accès de fichier avec un dossier exports et un préfixe de fichier query-1-export sera représenté par /exports/query-1-export.

  • AWS Région (facultatif) — La AWS Région dans laquelle se trouve le compartiment Amazon S3. Si vous ne spécifiez pas de AWS Valeur de la région, puis Aurora enregistre vos fichiers dans Amazon S3 de la même manière AWS Région en tant qu' de bases de données exportatrice.

    Note

    À l'heure actuelle, le AWS La région doit être identique à la région de l' de bases de données exportatrice.

    Pour une liste des AWS Noms de régions et valeurs associées, voirRégions et zones de disponibilité.

Pour conserver les informations de fichier Amazon S3 sur l'emplacement de stockage de l'exportation, vous pouvez utiliser la fonction aws_commons.create_s3_uri pour créer une structure composite aws_commons._s3_uri_1 comme suit.

psql=> SELECT aws_commons.create_s3_uri( 'amzn-s3-demo-bucket', 'sample-filepath', 'us-west-2' ) AS s3_uri_1 \gset

Vous fournissez ultérieurement cette valeur s3_uri_1 en tant que paramètre dans l'appel à la fonction aws_s3.query_export_to_s3. Pour obtenir des exemples, consultez Exportation de données de requête à l'aide de la fonction aws_s3.query_export_to_s3.