Ajouter des données à une Aurora) et les interroger dans Amazon Redshift - 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.

Ajouter des données à une Aurora) et les interroger dans Amazon Redshift

Pour terminer la création d'une ETL intégration zéro qui réplique les données d' Aurora vers RDS Amazon Redshift, vous devez créer une base de données de destination dans Amazon Redshift.

Tout d'abord, connectez-vous à votre cluster ou groupe de travail Amazon Redshift et créez une base de données avec une référence à votre identifiant d'intégration. Vous pouvez ensuite ajouter des données à votre cluster de source Aurora DB et les voir répliquées dans Amazon Redshift.

Création d’une base de données de destination dans Amazon Redshift

Avant de pouvoir commencer à répliquer des données dans Amazon Redshift, après avoir créé une intégration, vous devez créer une base de données de destination dans votre entrepôt des données cible. Cette base de données de destination doit inclure une référence à l'identifiant d'intégration. Vous pouvez utiliser la console Amazon Redshift ou l'éditeur de requête v2 pour créer la base de données.

Pour obtenir des instructions sur la création d'une base de données de destination, consultez Création d'une base de données de destination dans Amazon Redshift.

Ajout de données au cluster source

Après avoir configuré votre intégration, vous pouvez ajouter des données au cluster de Aurora DB que vous souhaitez répliquer dans votre entrepôt de données Amazon Redshift.

Note

Il existe des différences entre les types de données dans Amazon Aurora et Amazon Redshift. Pour un tableau des mappages de types de données, consultez Différences de type de données entre les bases de données Aurora et Amazon Redshift.

Connectez-vous d'abord au cluster de source à l'aide du SQL client My SQL ou Postgre de votre choix. Pour obtenir des instructions, consultez Connexion à un cluster de bases de données Amazon Aurora.

Ensuite, créez une table et insérez une ligne d'exemples de données.

Important

Assurez-vous que la table possède une clé primaire. Sinon, elle ne peut pas être répliquée vers l'entrepôt de données cible.

Les SQL utilitaires Postgre pg_dump et pg_restore créent d'abord des tables sans clé primaire, puis les ajoutent par la suite. Si vous utilisez l'un de ces utilitaires, nous vous recommandons de créer d'abord un schéma, puis de charger les données dans une commande distincte.

Mon SQL

L'exemple suivant utilise l'utilitaire My SQL Workbench.

CREATE DATABASE my_db; USE my_db; CREATE TABLE books_table (ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL, Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID)); INSERT INTO books_table VALUES (1, 'The Shining', 'Stephen King', 1977, 'Supernatural fiction');

Poster SQL

L'exemple suivant utilise le terminal SQL interactif psql Postgre. Lorsque vous vous connectez au cluster, incluez la base de données nommée que vous avez spécifiée lors de la création de l'intégration.

psql -h mycluster.cluster-123456789012.us-east-2.rds.amazonaws.com -p 5432 -U username -d named_db; named_db=> CREATE TABLE books_table (ID int NOT NULL, Title VARCHAR(50) NOT NULL, Author VARCHAR(50) NOT NULL, Copyright INT NOT NULL, Genre VARCHAR(50) NOT NULL, PRIMARY KEY (ID)); named_db=> INSERT INTO books_table VALUES (1, "The Shining", "Stephen King", 1977, "Supernatural fiction");

Interrogation de vos données Aurora dans Amazon Redshift

Une fois que vous avez ajouté des données au cluster Aurora DB, celles-ci sont répliquées dans Amazon Redshift et sont prêtes à être interrogées.

Pour interroger les données répliquées
  1. Accédez à la console Amazon Redshift et choisissez Éditeur de requête v2 dans le panneau de navigation de gauche.

  2. Connectez-vous à votre cluster ou groupe de travail et choisissez votre base de données de destination (que vous avez créée à partir de l'intégration) dans le menu déroulant (destination_database dans cet exemple). Pour obtenir des instructions sur la création d'une base de données de destination, consultez Création d'une base de données de destination dans Amazon Redshift.

  3. Utilisez une SELECT instruction pour interroger vos données. Dans cet exemple, vous pouvez exécuter la commande suivante pour sélectionner toutes les données de la table que vous avez créée dans le cluster de source Aurora DB :

    SELECT * from my_db."books_table";
    Exécutez une SELECT instruction dans l'éditeur de requêtes Redshift. Le résultat est une seule ligne d'échantillons de données qui a été ajoutée à la RDS base de données.
    • my_dbest le nom du schéma de base de données Aurora. Cette option n'est nécessaire que pour Mes SQL bases de données.

    • books_tableest le nom de la table Aurora.

Vous pouvez également interroger les données à l'aide d'un client de ligne de commande. Par exemple :

destination_database=# select * from my_db."books_table"; ID | Title | Author | Copyright | Genre | txn_seq | txn_id ----+–------------+---------------+-------------+------------------------+----------+--------+ 1 | The Shining | Stephen King | 1977 | Supernatural fiction | 2 | 12192
Note

Pour appliquer la sensibilité à la casse, utilisez des guillemets doubles (« ») pour les noms de schéma, de table et de colonne. Pour plus d'informations, consultez enable_case_sensitive_identifier.

Différences de type de données entre les bases de données Aurora et Amazon Redshift

Le type de données Aurora My SQL ou Aurora Postgre avec un type de SQL données Amazon Redshift correspondant. SQL Amazon Aurora ne prend actuellement en charge que ces types de données sans aucune ETL intégration.

Si une table du cluster de base de données de votre de données source inclut un type de données non pris en charge, la table est désynchronisée et n'est pas consommable par la cible Amazon Redshift. Le streaming de la source vers la cible se poursuit, mais le tableau contenant le type de données non pris en charge n'est pas disponible. Pour corriger le tableau et le mettre à disposition dans Amazon Redshift, vous devez annuler manuellement le changement critique, puis actualiser l'intégration en exécutant ALTER DATABASE...INTEGRATION REFRESH.

Aurora My SQL

Aurora My Type de données Amazon Redshift Description Limites
INT INTEGER Entier signé sur quatre octets
SMALLINT SMALLINT Entier signé sur deux octets
TINYINT SMALLINT Entier signé sur deux octets
MEDIUMINT INTEGER Entier signé sur quatre octets
BIGINT BIGINT Entier signé sur huit octets
INT UNSIGNED BIGINT Entier signé sur huit octets
TINYINT UNSIGNED SMALLINT Entier signé sur deux octets
MEDIUMINT UNSIGNED INTEGER Entier signé sur quatre octets
BIGINT UNSIGNED DECIMAL(20,0) Valeur numérique exacte avec précision sélectionnable
DECIMAL(p, s) = NUMERIC (p, s) DECIMAL(p, s) Valeur numérique exacte avec précision sélectionnable

La précision supérieure à 38 et l'échelle supérieure à 37 ne sont pas prises en charge

DECIMAL(p, s) UNSIGNED = NUMERIC (p, s) UNSIGNED DECIMAL(p, s) Valeur numérique exacte avec précision sélectionnable

La précision supérieure à 38 et l'échelle supérieure à 37 ne sont pas prises en charge

FLOAT4/REAL REAL Nombre à virgule flottante simple précision
FLOAT4/REAL UNSIGNED REAL Nombre à virgule flottante simple précision
DOUBLE/REAL/FLOAT8 DOUBLE PRECISION Nombre à virgule flottante de double précision
DOUBLE/REAL/FLOAT8 UNSIGNED DOUBLE PRECISION Nombre à virgule flottante de double précision
BIT(n) VARBYTE(8) Valeur binaire de longueur variable
BINARY(n) VARBYTE(n) Valeur binaire de longueur variable
VARBINARY(n) VARBYTE(n) Valeur binaire de longueur variable
CHAR(n) VARCHAR(n) Valeur de chaîne de longueur variable
VARCHAR(n) VARCHAR(n) Valeur de chaîne de longueur variable
TEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 octets
TINYTEXT VARCHAR(255) Valeur de chaîne de longueur variable jusqu'à 255 octets
MEDIUMTEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 octets
LONGTEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 octets
ENUM VARCHAR(1020) Valeur de chaîne de longueur variable jusqu'à 1 020 octets
SET VARCHAR(1020) Valeur de chaîne de longueur variable jusqu'à 1 020 octets
DATE DATE Date calendaire (année, mois, jour)
DATETIME TIMESTAMP Date et heure (sans fuseau horaire)
TIMESTAMP(p) TIMESTAMP Date et heure (sans fuseau horaire)
TIME VARCHAR(18) Valeur de chaîne de longueur variable jusqu'à 18 octets
YEAR VARCHAR(4) Valeur de chaîne de longueur variable jusqu'à 4 octets
JSON SUPER Données ou documents semi-structurés sous forme de valeurs

Poster Aurora SQL

ETLLes intégrations zéro pour Aurora Postgre SQL ne prennent pas en charge les types de données personnalisés ou les types de données créés par des extensions.

Important

La fonctionnalité d'ETLintégration zéro avec Amazon Redshift pour Aurora SQL Postgre est en version préliminaire. La documentation et la fonction sont toutes deux sujettes à modification. Vous ne pouvez utiliser cette fonctionnalité que dans des environnements de test, et non dans des environnements de production. Pour voir les conditions générales, consultez Betas and Previews (Bêtas et aperçus) dans les Conditions de service AWS.

Type de SQL données Aurora Postgre Type de données Amazon Redshift Description Limites
bigint BIGINT Entier signé sur huit octets
grande série BIGINT Entier signé sur huit octets
bit (n) VARBYTE(n) Valeur binaire de longueur variable
bit variable (n) VARBYTE(n) Valeur binaire de longueur variable
bit VARBYTE(1024 000) Valeur de chaîne de longueur variable jusqu'à 1 024 000 octets
boolean BOOLEAN Booléen logique (vrai/faux)
par le thé VARBYTE(1024 000) Valeur de chaîne de longueur variable jusqu'à 1 024 000 octets
caractère (n) CHAR(n) Chaîne de caractères de longueur fixe
caractère variable (n) VARCHAR(65535) Valeur de chaîne de longueur variable
date DATE Date calendaire (année, mois, jour)
  • Valeurs supérieures à celles qui 9999-12-31 ne sont pas prises en charge

  • Les valeurs de la Colombie-Britannique ne sont pas prises en charge

double precision DOUBLE PRECISION Chiffres à virgule flottante à double précision Valeurs inférieures à la normale non prises en charge
entier INTEGER Entier signé sur quatre octets
money DECIMAL(20,3) Montant en devise
numeric(p,s) DECIMAL(p, s) Valeur de chaîne de longueur variable
  • NaNvaleurs non prises en charge

  • La précision supérieure à 38 et l'échelle supérieure à 37 ne sont pas prises en charge

  • Échelle négative non prise en charge

real REAL Nombre à virgule flottante simple précision
smallint SMALLINT Entier signé sur deux octets
petite série SMALLINT Entier signé sur deux octets
serial INTEGER Entier signé sur quatre octets
text VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 octets
heure [(p)] [sans fuseau horaire] VARCHAR(19) Valeur de chaîne de longueur variable jusqu'à 19 octets Infinityet -Infinity valeurs non prises en charge
heure [(p)] avec fuseau horaire VARCHAR(22) Valeur de chaîne de longueur variable jusqu'à 22 octets
  • Infinityet -Infinity valeurs non prises en charge

horodatage [(p)] [sans fuseau horaire] TIMESTAMP Date et heure (sans fuseau horaire)
  • Infinityet -Infinity valeurs non prises en charge

  • Valeurs supérieures à celles qui 9999-12-31 ne sont pas prises en charge

  • Les valeurs de la Colombie-Britannique ne sont pas prises en charge

horodatage [(p)] avec fuseau horaire TIMESTAMPTZ Date et heure (avec fuseau horaire)
  • Infinityet -Infinity valeurs non prises en charge

  • Valeurs supérieures à celles qui 9999-12-31 ne sont pas prises en charge

  • Les valeurs de la Colombie-Britannique ne sont pas prises en charge