Migration d'Amazon Redshift vers Autonomous AI Database

SQL Developer Amazon Redshift Migration Assistant, disponible avec SQL Developer 18.3 et versions ultérieures, fournit un cadre pour la migration facile des environnements Amazon Redshift sur une base par schéma.

Cette section décrit les étapes et le flux de travail pour une migration en ligne d'Amazon Redshift et pour la génération de scripts pour une migration manuelle programmée que vous exécutez ultérieurement.

Aperçu de la migration Redshift de base de données d'IA autonome

À l'aide de SQL Developer, vous pouvez migrer des fichiers de base de données d'Amazon Redshift vers Autonomous AI Database.

  • Capture : Saisit les schémas et les tables de métadonnées à partir de la base de données source et les stocke dans le référentiel de migration.

  • Convertir : Les types de données Redshift sont mappés aux types de données Oracle. Les noms d'objet Redshift sont convertis en noms Oracle en fonction de la convention d'attribution de nom Oracle. Les valeurs par défaut de colonne qui utilisent les fonctions Redshift sont remplacées par leurs équivalents Oracle.

  • Générer : Générez des schémas et des LDD en fonction des métadonnées converties.

  • Déployer : Déployez les schémas et les LDD générés.

  • Copier les données : Déchargez les données des tables Redshift vers le stockage Amazon S3, puis copiez les données du stockage Amazon vers les tables de base de données Autonomous AI Database (dans les schémas) qui ont été déployées précédemment.

Se connecter à Amazon Redshift

À l'aide de SQL Developer, vous pouvez migrer des schémas et des tables de base de données d'Amazon Redshift vers Autonomous AI Database. Pour extraire des métadonnées et des données d'Amazon Redshift pour une migration, vous devez vous connecter à Amazon Redshift avec SQL Developer.

Télécharger le pilote JDBC Amazon Redshift et ajouter le pilote tiers

  1. Téléchargez un pilote JDBC Amazon Redshift pour accéder à Amazon Redshift. Consultez la documentation Amazon Redshift pour connaître l'emplacement du pilote JDBC le plus récent. Pour plus d'informations, voir Configurer une connexion JDBC.

    Note

    Utilisez le pilote JDBC 4.2 compatible avec Amazon Redshift.
  2. Stockez le pilote JDBC Amazon Redshift dans un répertoire local où SQL Developer peut accéder au pilote JDBC Amazon Redshift.

  3. Ajoutez le pilote JDBC Amazon Redshift en tant que tierce partie à SQL Developer avant d'établir une connexion. Dans SQL Developer, allez à Outils > Préférences > Base de données > Pilotes JDBC de tierce partie (pour Mac, il s'agit de Oracle SQL Developer > Préférences de base de données > Pilotes JDBC de tierce partie).

  4. Cliquez sur Ajouter une entrée et sélectionnez le chemin d'accès au pilote JDBC Amazon Redshift que vous téléchargez.


    Une description de dwcs_aws_migration_jdbc_add1.png suit
    Description de l'illustration dwcs_aws_migration_jdbc_add1.png
  5. Cliquez sur OK pour ajouter le pilote JDBC Amazon Redshift que vous téléchargez.


Une description de dwcs_aws_migration_jdbc_add2.png suit
Description de l'illustration dwcs_aws_migration_jdbc_add2.png

Ajouter une connexion à la base de données Amazon Redshift

Connectez-vous à la base de données Amazon Redshift.

  1. Dans le panneau Connexions, cliquez avec le bouton droit de la souris sur Connexions et sélectionnez Nouvelle connexion....

  2. Sélectionnez l'onglet Amazon Redshift et entrez les informations de connexion pour Amazon Redshift.

    Si vous envisagez de migrer plusieurs schémas, il est recommandé de vous connecter avec le nom d'utilisateur principal à votre système Amazon Redshift.


    Une description de adw_migrate_aws_connect1.png suit
    Description de l'illustration adw_migrate_aws_connect1.png

Testez la connexion avant de l'enregistrer.

Informations supplémentaires pour l'authentification et le contrôle d'accès Amazon

Se connecter à une base de données autonome avec intelligence artificielle

À l'aide de SQL Developer, vous créez une connexion à Autonomous AI Database

Obtenez le fichier zip du portefeuille de données d'identification du client. Pour plus d'informations, voir Download Client Credentials (Wallets).
  1. Dans le panneau Connexions, cliquez avec le bouton droit de la souris sur Connexions et sélectionnez Nouvelle connexion....
  2. Sélectionnez l'onglet Oracle et entrez les informations de connexion pour Autonomous AI Database.
  3. Pour la connexion à AWS Redshift Migration, sélectionnez la connexion _low à votre base de données.

    Pour plus d'informations, voir Noms de service de base de données pour la base de données d'IA autonome pour plus d'informations.

  4. Ajoutez une connexion à Autonomous AI Database.

Démarrer l'Assistant Migration vers le nuage

Appelez l'Assistant Migration vers le nuage à partir du menu Outils de SQL Developer pour lancer votre migration Amazon Redshift vers Autonomous AI Database.

L'Assistant Migration vers le nuage commence lorsque vous cliquez sur Migrations vers le nuage à partir de Migration dans le menu Outils. L'Assistant Migrations vers le nuage vous permet de migrer des schémas, des objets (tables) et des données d'une base de données Amazon Redshift vers Autonomous AI Database.

L'Assistant Migration vers le nuage est un ensemble facile d'étapes. L'Assistant Migration vers le nuage vous guide vers :

  • Identifiez les schémas de votre base de données Amazon Redshift que vous souhaitez migrer.

  • Identifiez la base de données d'IA autonome cible.

  • Indiquez si vous souhaitez migrer les métadonnées (LDD), les données ou les deux.

  • Choisissez de migrer votre système en ligne, de générer des scripts, ou les deux.

Identifier la base de données Amazon Redshift

Identifiez les schémas de la base de données Amazon Redshift à migrer. Tous les objets, principalement les tables, du schéma seront migrés. La migration vers une base de données autonome d'IA se fait sur une base par schéma. Les schémas ne peuvent pas être renommés dans le cadre de la migration.

  1. Dans la migration AWS Redshift, spécifiez la connexion.


    Une description de adw_migrate_redshift_step1of3.png suit
    Description de l'illustration adw_migrate_redshift_step1of3.png
  • Connexion : Nom de la connexion à la base de données Redshift.

  • Schémas disponibles : Schémas disponibles pour la connexion spécifique.

  • Schémas sélectionnés : Cliquez sur l'icône Ajouter pour sélectionner les schémas à migrer à partir de Schémas disponibles.

  • Inclure les données : Les opérations LDD et DATA migrent les schémas et les données sélectionnés.

Lorsque vous migrez des données, vous devez fournir la clé d'accès AWS, la clé d'accès secrète AWS et un URI de seau S3 existant où les données Redshift seront déchargées et stockées temporairement. Les données d'identification de sécurité nécessitent certains privilèges pour stocker des données dans S3. Il est recommandé de créer de nouvelles clés d'accès distinctes pour la migration. La même clé d'accès est utilisée plus tard pour charger les données dans la base de données de l'IA autonome à l'aide de demandes REST sécurisées.

Format d'URI du seau Amazon S3

Pour les fichiers sources qui résident dans Amazon S3, voir la description suivante du format d'URI pour accéder à vos fichiers : Accès à un seau. Par exemple, ce qui suit fait référence au dossier de fichiers 'folder_name' dans le seau adwc de la région us-west-2.

https://s3-us-west-2.amazonaws.com/adwc/folder_name

Exemple 1 de configuration de seau S3

Si vous fournissez l'URI de seau S3 suivant :

https://s3-us-west-2.amazonaws.com/my_bucket

L'assistant vérifie le chemin complet, y compris my_bucket. Tentative d'écriture d'un fichier de test. S'il n'est pas accessible, une invite s'affiche. Si my_bucket n'existe pas, une erreur est signalée :

Validation Failed

La génération de code crée ensuite le chemin suivant pour la fonction DBMS_CLOUD.COPY_DATA :

file_uri_list => "https://s3-us-west-2.amazonaws.com/my_bucket/oracle_schema_name/oracle_table_name/*.gz"

L'assistant de migration crée les dossiers suivants : oracle_schema_name/oracle_table_name dans le seau : my_bucket.

Exemple 2 de seau S3

Si vous fournissez l'URI de seau S3 suivant :

https://s3-us-west-2.amazonaws.com/my_bucket/another_folder

L'assistant vérifie le chemin complet, y compris my_bucket. Tentative d'écriture d'un fichier de test. S'il n'est pas accessible, une invite s'affiche. Si my_bucket n'existe pas, une erreur est signalée :

Validation Failed

Dans ce cas, another_folder n'a pas à exister. La migration crée le seau another_folder dans my_bucket.

La génération de code crée ensuite le chemin suivant pour la fonction DBMS_CLOUD.COPY_DATA :

file_uri_list => ‘https://s3-us-west-2.amazonaws.com/my_bucket/another_folder/oracle_schema_name/oracle_table_name/*.gz

Étape 2 de 3 : Nuage autonome d'entrepôt avec lac de données sur l'intelligence artificielle

Créez d'abord une connexion pour votre base de données d'IA autonome cible. Voir Connexion à une base de données d'IA autonome. L'utilisateur de cette connexion doit disposer des privilèges d'administration; la connexion est utilisée tout au long de la migration pour créer des schémas et des objets.

Note

Utilisez l'utilisateur ADMIN ou un utilisateur doté du rôle d'administrateur.

Amazon Redshift Migration Assistant vous permet d'effectuer une migration en ligne immédiatement, de générer tous les scripts nécessaires à une migration, ou les deux. Si vous choisissez de stocker les scripts dans un répertoire local, vous devez spécifier le répertoire local (le répertoire doit être accessible en écriture par l'utilisateur).

  • Connexion : Nom de la connexion Autonomous AI Lakehouse Cloud. Créez une connexion pour la base de données IA autonome, si nécessaire. L'utilisateur doit disposer de privilèges d'administration, car cette connexion est utilisée tout au long de la migration pour créer des schémas et des objets. 

  • Mot de passe du référentiel de migration : Mot de passe du référentiel de migration installé dans la base de données d'IA autonome dans le cadre de la migration de schéma. Utilisez le mot de passe prérempli ou entrez un nouveau mot de passe.

  • Supprimer le référentiel lors d'une migration réussie : Sélectionnez cette option pour supprimer le référentiel une fois la migration terminée. Le référentiel n'est pas requis après la migration.

  • Migrer maintenant : Sélectionnez cette option pour effectuer une migration en ligne immédiatement.

    Note

    • Si l'option Inclure les données de l'étape 1 et Migrer maintenant n'est pas sélectionnée, vous optez pour la génération simple de tous les scripts SQL requis pour la migration manuelle.

    • Si l'option Inclure les données de l'étape 1 n'est pas cochée et que l'option Migrer maintenant est sélectionnée, tous les schémas sélectionnés et leurs tables seront déployés dans la base de données d'intelligence artificielle autonome, mais les données ne seront pas chargées dans les tables.

    • Si l'option Inclure les données de l'étape 1 et l'option Migrer maintenant sont toutes deux sélectionnées, tous les schémas sélectionnés et leurs tables seront déployés dans la base de données IA autonome et les données seront chargées dans les tables.

  • Répertoire : Spécifiez le directeur pour stocker les scripts générés nécessaires à la migration. Les scripts sont enregistrés dans un répertoire local.

Paramètres avancés (facultatif)

Les paramètres par défaut doivent fonctionner sauf si vous voulez contrôler les options de format lors du déchargement vers le stockage S3 ou de la copie à partir du stockage S3 vers la base de données IA autonome. Pour plus d'informations sur les options de formatage, voir Options de format d'ensemble DBMS_CLOUD. Pour utiliser les options avancées, cliquez sur Paramètres avancés.

Répertoire de sortie : Entrez le chemin ou cliquez sur Sélectionner un répertoire pour sélectionner le répertoire ou le dossier pour la migration.

Nombre maximal d'unités d'exécution : Entrez le nombre d'unités d'exécution parallèles à activer lors du chargement de données dans des tables de la base de données IA autonome.

Utiliser le programmateur : Sélectionnez cette option pour activer le programmateur pour la migration. Vous pouvez programmer des tâches pour les opérations de migration de chargement de données du seau AWS S3 vers la base de données Autonomous AI Database. Vous avez la possibilité d'exécuter les tâches programmées immédiatement ou à une date et une heure futures. Pour surveiller les travaux programmés de chargement de données, utilisez le noeud Scheduler dans le navigateur de connexions.

Choix d'exécution de la migration :

  • Immédiat exécute le programmateur dès que la migration Redshift est déclenchée.

  • Une fois exécute le programmateur à une date future. Vous spécifiez la date de début et le fuseau horaire. Par défaut, la date de début affiche la date et l'heure courantes du système local. Pour modifier la date de début, utilisez l'icône du calendrier pour cliquer deux fois sur la date et la sélectionner ou utilisez le filtre pour mettre la date en surbrillance, puis cliquez sur le champ pour la définir.

Options de déchargement Redshift : Autoriser le remplacement : Si cette option est activée, le processus de déchargement remplacera les fichiers existants, y compris le fichier manifeste (dresse la liste des fichiers de données créés par le processus de déchargement). Par défaut, le déchargement échoue si des fichiers peuvent être remplacés.

Options de format ADWC : Limite de rejet : Entrez le nombre de rangées à rejeter lors du chargement des données dans des tables de la base de données d'intelligence artificielle autonome. L'opération de migration échouera après le rejet du nombre spécifié de rangées. La valeur par défaut est 0.

Réviser et terminer la migration Amazon Redshift

Le sommaire affiche un sommaire des informations que vous avez spécifiées.

Pour modifier des informations, appuyez sur Précédent selon les besoins.


Description de adw_migrate_aws_summary.png :
Description de l'illustration adw_migrate_aws_summary.png

Si vous avez choisi une migration immédiate, la boîte de dialogue de l'assistant de migration reste ouverte jusqu'à ce que la migration soit terminée. Si vous sélectionnez Générer des scripts, le processus de migration génère les scripts nécessaires dans le répertoire local spécifié et n'exécute pas les scripts.

Pour effectuer la migration, cliquez sur Finish (Terminer)

Si le nom de schéma sélectionné dans AWS Redshift existe déjà dans Autonomous AI Database, le processus de migration exclut le déploiement de ces schémas sélectionnés et affiche une boîte de dialogue :


Description de adw_migrate_aws_schema_exists.png :
Description de l'illustration adw_migrate_aws_schema_exists.png

Résumé : Ce que l'assistant de migration crée

  • Crée un utilisateur de base de données d'intelligence artificielle autonome à l'aide de schema_name à partir de Redshift.

  • Crée un seau sur S3 en fonction du nom du schéma.

  • Crée des sous-dossiers sur S3 pour chaque table.

Utiliser les scripts de migration Amazon Redshift générés

Lorsque vous choisissez de générer des scripts de migration, un nouveau sous-répertoire est créé dans le répertoire local indiqué dans l'assistant de migration. Vous pouvez exécuter ces scripts en temps réel ou les utiliser pour le traitement par programmation.

Le répertoire contient les scripts suivants :

  • redshift_s3unload.sql

  • adwc_ddl.sql

  • adwc_dataload.sql

  • adwc_dataload_scheduler.sql

Ces scripts contiennent toutes les commandes nécessaires pour migrer votre système Amazon Redshift vers Autonomous AI Database. Vous pouvez exécuter ces scripts en temps réel ou les utiliser pour le traitement par programmation.

Déchargez vos données Amazon Redshift dans S3

La première étape d'une migration réussie est de décharger vos données Amazon Redshift dans Amazon S3, qui agit comme une zone intermédiaire. Le script redshift_s3unload.sql contient toutes les commandes de déchargement Amazon Redshift pour décharger les données à l'aide des données d'identification d'accès et du seau S3 spécifiés dans le flux de travail de l'assistant de migration.

Connectez-vous à votre environnement Amazon Redshift pour exécuter ce script.

Créer vos objets Lakehouse

Pour préparer votre base de données avec intelligence artificielle autonome, créez votre schéma d'entrepôt avec lac de données vide avant de charger les données. L'assistant de migration Amazon Redshift a converti toutes les structures de schéma Amazon Redshift en structures Oracle dans le script adwc_ddl.sql.

Le script doit être exécuté lorsque vous êtes connecté à votre base de données d'intelligence artificielle autonome en tant qu'utilisateur privilégié, par exemple ADMIN.

Par défaut, le schéma créé pour la migration porte le même nom que le schéma dans Amazon Redshift. Vous devez remplacer le mot de passe par le mot de passe valide pour l'utilisateur spécifié dans le script ou après l'exécution du script. Si vous voulez modifier le nom du schéma, modifiez le nom du schéma et toutes les références au nom.

Chargez vos données Amazon Redshift dans Oracle Autonomous AI Database

Le script adwc_dataload.sql contient toutes les commandes de chargement nécessaires pour charger vos données Amazon Redshift déchargées directement depuis S3 dans votre base de données Autonomous AI Database.

Exécutez le script en étant connecté à votre base de données d'intelligence artificielle autonome en tant qu'utilisateur privilégié, par exemple ADMIN.

Si vous voulez modifier le nom du schéma cible lorsque vous créez vos objets avec entrepôt avec lac de données, vous devez ajuster les noms de schéma cible dans ce script en conséquence.

Utilisation de JOB SCHEDULER

SQL Developer fournit une interface graphique permettant d'utiliser l'ensemble PL/SQL DBMS_SCHEDULER pour travailler avec des objets Oracle Scheduler. Pour utiliser les fonctions de programmation de SQL Developer, reportez-vous à la rubrique 'Planification des tâches à l'aide de SQL Developer du guide de l'utilisateur de SQL Developer et au guide de l'administrateur d'Oracle Database pour comprendre les concepts et les tâches essentielles pour la programmation des tâches.

Le noeud Scheduler pour une connexion apparaît dans le navigateur de connexions et dans le navigateur DBA. Utilisez l'utilisateur ADWC 'admin' pour naviguer et afficher les objets du programmateur détenus par le statut de surveillance 'admin' des tâches de chargement de données.

Sous Connexion ADWC 'admin' → Programmateur → Travaux, les travaux de chargement de données AWS Redshift vers ADWC sont créés sous le nom <schema_name>_<table_name>. 

Pour voir le statut d'achèvement de chaque chargement de données, développez chaque tâche programmée et vérifiez le statut.

Pour plus d'informations sur l'opération de chargement de données, voir la table MD_REPORT dans le schéma SQLDEV_MIGREPOS qui stocke des informations sur les colonnes de table : et

 OPERATION_ID, LOGFILE_TABLE, BADFILE_TABLE, SOURCE_SCHEMA_NAME, TARGET_SCHEMA_NAME, SOURCE_TABLE_NAME, 

et

 TARGET_TABLE_NAME, SOURCE_TABLE_ROWS, TARGET_TABLE_ROWS_LOADED, ERROR MESSAGE, 

et

STATUS (COMPLETED or FAILED)

Fichiers de journal et de rapport de migration Redshift

Après la migration Redshift, vous trouverez trois fichiers :

  • MigrationResults.log : Fichier journal de la migration Redshift

  • readme.txt : fichier expliquant comment utiliser les scripts de migration Amazon Redshift générés.

  • redshift_migration_reportxxx.txt : Contient des informations sur la migration, voici un exemple :

    ______________________________________________________________
    OPERATION ID : 8566
    LOGFILE TABLE : COPY$8566_LOG
    BADFILE TABLE : COPY$8566_BAD
    SOURCE SCHEMA : sample
    TARGET SCHEMA : SAMPLE
    SOURCE TABLE : listing
    TARGET TABLE : LISTING
    SOURCE TABLE ROWS : 192497
    TABLE ROWS LOADED : 192497
    ERROR MESSAGE : null
    STATUS : COMPLETED
    START TIME : 2018-09-27 17:25:18.662075
    END TIME : 2018-09-27 17:25:25.012695
    ______________________________________________________________

Effectuer les tâches post-migration

Après avoir réussi la migration de votre environnement Redshift, vous devez tenir compte des tâches suivantes après la migration :

  • Supprimer le schéma SQLDEV_MIGREPOS

  • Supprimer le seau Amazon S3 utilisé pour la préparation

  • Renforcez le compte Amazon utilisé pour accéder à S3

  • Supprimer les données d'identification de base de données utilisées pour le chargement des données à partir de S3

  • Renforcez vos comptes dans votre base de données autonome sur l'IA

  1. Supprimer le schéma SQLDEV_MIGREPOS

    Dans le cadre de la migration de schéma, l'assistant de migration installe un référentiel de migration minimal dans la base de données d'IA autonome cible. Après la migration, ce compte n'est plus nécessaire et peut être supprimé ou verrouillé.

  2. Supprimer le seau Amazon S3 utilisé pour le stockage temporaire

    Sauf si vous souhaitez utiliser les données Redshift déchargées, sinon vous pouvez déposer le seau contenant les données déchargées.

  3. Renforcer le compte Amazon utilisé pour accéder à S3

    Vous devez désactiver la clé d'accès de sécurité utilisée pour l'accès S3, sauf si cela est nécessaire à d'autres fins.

  4. Supprimer les données d'identification de base de données utilisées pour le chargement des données à partir de S3

    Les données d'identification de sécurité Amazon pour accéder à S3 sont stockées chiffrées en tant que données d'identification de base de données REDSHIFT_DWCS_CREDS dans votre base de données d'intelligence artificielle autonome dans le schéma d'utilisateur privilégié utilisé pour la migration. Oracle vous recommande de supprimer ces données d'identification après une migration réussie, sauf si cela est nécessaire à d'autres fins. Pour plus d'informations, consultez DROP_CREDENTIAL Procédure.

  5. Renforcez vos comptes dans votre base de données autonome sur l'IA

    Pour le nouveau schéma créé dans le cadre de la migration avec l'assistant de migration, assurez-vous de modifier les mots de passe de ces comptes ou de les verrouiller et de les expirer s'ils sont utilisés uniquement pour le stockage des données.