Ajouter des données à une base de données RDS source (cluster de bases de données) et les interroger - Amazon Relational Database Service

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 base de données RDS source (cluster de bases de données) et les interroger

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

Pour les connexions avec Amazon Redshift, 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 source et les voir répliquées dans Amazon Redshift ou. Amazon SageMaker

Création d'une base de données cible

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 dans votre entrepôt de données cible. Cette base de données 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 de base de données source

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

Note

Il existe des différences entre les types de données dans Amazon RDS, et dans l'entrepôt d'analyse cible. Pour un tableau des mappages de types de données, consultez Différences de type de données entre les bases de données RDS et Amazon Redshift.

Connectez-vous d'abord au de base de données source à l'aide du client MySQL de votre choix. Pour obtenir des instructions, veuillez consulter Connexion à votre instance de base de données MySQL.

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.

L'exemple suivant utilise l'utilitaire MySQL 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');

Interrogation de vos données Amazon RDS dans Amazon Redshift

Une fois que vous avez ajouté des données au de la base de données RDS, celles-ci sont répliquées dans la base de données de destination 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 instruction SELECT 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 de la base de données RDS source :

    SELECT * from my_db."books_table";
    Exécutez une instruction SELECT dans l'éditeur de requêtes. Le résultat est une seule ligne d'échantillons de données qui a été ajoutée à la base de données Amazon RDS.
    • my_db est le nom du schéma de base de données RDS.

    • books_table est le nom de la table RDS.

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 RDS et Amazon Redshift

Le tableau suivant montre le mappage d'un RDS pour MySQL. Les avec un type de données de destination correspondant. Amazon RDS ne prend actuellement en charge que ces types de données pour les intégrations sans ETL.

Si une table du de base de données de votre base 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 de destination. 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 rendre disponible dans la destination cible, vous devez annuler manuellement la modification la plus importante, puis actualiser l'intégration en exécutantALTER DATABASE...INTEGRATION REFRESH.

Note

Vous ne pouvez pas actualiser les intégrations Zero-ETL avec un Amazon SageMaker Lakehouse. Supprimez plutôt l'intégration et réessayez de la créer.

RDS pour MySQL MySQL

Type de données RDS for MySQL Type de données cible Description Limites
INT INTEGER Entier signé sur quatre octets Aucun
SMALLINT SMALLINT Entier signé sur deux octets Aucun
TINYINT SMALLINT Entier signé sur deux octets Aucun
MEDIUMINT INTEGER Entier signé sur quatre octets Aucun
BIGINT BIGINT Entier signé sur huit octets Aucun
INT UNSIGNED BIGINT Entier signé sur huit octets Aucun
TINYINT UNSIGNED SMALLINT Entier signé sur deux octets Aucun
MEDIUMINT UNSIGNED INTEGER Entier signé sur quatre octets Aucun
BIGINT UNSIGNED DECIMAL(20,0) Valeur numérique exacte avec précision sélectionnable Aucun
DÉCIMAL (p, s) = NUMÉRIQUE (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

DÉCIMAL (p, s) NON SIGNÉ = NUMÉRIQUE (p, s) NON SIGNÉ 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/RÉEL REAL Nombre à virgule flottante simple précision Aucun
FLOAT4/REAL NON SIGNÉ REAL Nombre à virgule flottante simple précision Aucun
DOUBLE/REAL/FLOAT8 DOUBLE PRECISION Nombre à virgule flottante de double précision Aucun
DOUBLE/REAL/FLOAT8 NON SIGNÉ DOUBLE PRECISION Nombre à virgule flottante de double précision Aucun
BIT (n) VARBYTE(8) Valeur binaire de longueur variable Aucun
BINAIRE (n) VARBYTE (n) Valeur binaire de longueur variable Aucun
VARBINAIRE (n) VARBYTE (n) Valeur binaire de longueur variable Aucun
CHAR(n) VARCHAR(n) Valeur de chaîne de longueur variable Aucun
VARCHAR(n) VARCHAR(n) Valeur de chaîne de longueur variable Aucun
TEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 caractères Aucun
TINYTEXT VARCHAR(255) Valeur de chaîne de longueur variable jusqu'à 255 caractères Aucun
MEDIUMTEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 caractères Aucun
LONGTEXT VARCHAR(65535) Valeur de chaîne de longueur variable jusqu'à 65 535 caractères Aucun
ENUM VARCHAR(1020) Valeur de chaîne de longueur variable jusqu'à 1 020 caractères Aucun
SET VARCHAR(1020) Valeur de chaîne de longueur variable jusqu'à 1 020 caractères Aucun
DATE DATE Date calendaire (année, mois, jour) Aucun
DATETIME TIMESTAMP Date et heure (sans fuseau horaire) Aucun
HORODATAGE (p) TIMESTAMP Date et heure (sans fuseau horaire) Aucun
TIME VARCHAR(18) Valeur de chaîne de longueur variable jusqu'à 18 caractères Aucun
YEAR VARCHAR(4) Valeur de chaîne de longueur variable jusqu'à 4 caractères Aucun
JSON SUPER Données ou documents semi-structurés sous forme de valeurs Aucun