Utiliser Netezza comme source pour AWS SCT - AWS Schema Conversion Tool

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.

Utiliser Netezza comme source pour AWS SCT

Vous pouvez l'utiliser AWS SCT pour convertir des schémas, des objets de code et du code d'application de Netezza vers Amazon Redshift.

Privilèges pour Netezza en tant que source

Les privilèges suivants sont requis pour utiliser Netezza comme source :

  • sélectionner dans la vue system.definition_schema.system

  • sélectionner dans la table system.definition_schema.system

  • sélectionner dans la table system.definition_schema.management

  • liste sur <database_name>

  • liste sur <schema_name>

  • liste sur <database_name>.all.table

  • liste sur la table <database_name>.all.external

  • liste sur <database_name>.all.view

  • liste sur la vue <database_name>.all.materialized

  • liste sur <database_name>.all.procedure

  • liste sur <database_name>.all.sequence

  • liste sur <database_name>.all.function

  • liste sur <database_name>.all.aggregate

Dans l'exemple précédent, remplacez les espaces réservés comme suit :

  • Remplacez database_name par le nom de la base de données source.

  • Remplacez schema_name par le nom du schéma source.

AWS SCTnécessite l'accès aux tables et vues système suivantes. Vous pouvez accorder l'accès à ces objets au lieu d'accorder l'accès à system.definition_schema.system view et system.definition_schema.system tables à la liste précédente.

  • sélectionnez sur system.definition_schema. _t_agrégat

  • sélectionnez sur system.definition_schema. _t_classe

  • sélectionnez sur system.definition_schema. _t_constraint

  • sélectionnez sur system.definition_schema. _t_const_relattr

  • sélectionnez sur system.definition_schema. _t_base de données

  • sélectionnez sur system.definition_schema. _t_group_priv

  • sélectionnez sur system.definition_schema. _t_groupusr

  • sélectionnez sur system.definition_schema. _t_hist_config

  • sélectionnez sur system.definition_schema. _t_objet

  • sélectionnez sur system.definition_schema. _t_object_classes

  • sélectionnez sur system.definition_schema. _t_proc

  • sélectionnez sur system.definition_schema. _t_type

  • sélectionnez sur system.definition_schema. _t_utilisateur

  • sélectionnez sur system.definition_schema. _t_usrobj_priv

  • sélectionnez sur system.definition_schema. _vt_sequence

  • sélectionnez sur system.definition_schema. _v_agrégat

  • sélectionnez sur system.definition_schema. _v_constraint_depends

  • sélectionnez sur system.definition_schema. _v_base de données

  • sélectionnez sur system.definition_schema. type de données _v_

  • sélectionnez sur system.definition_schema. _v_dslice

  • sélectionnez sur system.definition_schema. _v_function

  • sélectionnez sur system.definition_schema. _v_group

  • sélectionnez sur system.definition_schema. _v_obj_relation

  • sélectionnez sur system.definition_schema. _v_obj_relation_xdb

  • sélectionnez sur system.definition_schema. _v_procédure

  • sélectionnez sur system.definition_schema. _v_relation_column

  • sélectionnez sur system.definition_schema. _v_relation_keydata

  • sélectionnez sur system.definition_schema. _v_relobjclasses

  • sélectionnez sur system.definition_schema. _v_schema_xdb

  • sélectionnez sur system.definition_schema. _v_sequence

  • sélectionnez sur system.definition_schema. Synonyme _v_

  • sélectionnez sur system.definition_schema. _v_system_info

  • sélectionnez sur system.definition_schema. contrainte _v_sys_

  • sélectionnez sur system.definition_schema. _v_sys_object_dslice_info

  • sélectionnez sur system.definition_schema. _v_sys_user

  • sélectionnez sur system.definition_schema. _v_table

  • sélectionnez sur system.definition_schema. contrainte _v_table_

  • sélectionnez sur system.definition_schema. _v_table_dist_map

  • sélectionnez sur system.definition_schema. _v_table_organise_column

  • sélectionnez sur system.definition_schema. _v_table_storage_stat

  • sélectionnez sur system.definition_schema. _v_utilisateur

  • sélectionnez sur system.definition_schema. _v_view

  • sélectionnez sur system.information_schema. _v_relation_column

  • sélectionnez sur system.information_schema. _v_table

  • sélectionnez sur $hist_column_access_*

Connexion à Netezza en tant que source

Utilisez la procédure suivante pour vous connecter à votre base de données source Netezza avec AWS Schema Conversion Tool.

Pour vous connecter à une base de données source Netezza
  1. Dans leAWS Schema Conversion Tool, choisissez Ajouter une source.

  2. Choisissez Netezza, puis choisissez Suivant.

    La boîte de dialogue Ajouter une source s'affiche.

  3. Dans Nom de connexion, entrez le nom de votre base de données. AWS SCTaffiche ce nom dans l'arborescence du panneau de gauche.

  4. Utilisez les informations d'identification de base de données AWS Secrets Manager ou saisissez-les manuellement :

    • Pour utiliser les informations d'identification de base de données depuis Secrets Manager, suivez les instructions suivantes :

      1. Pour AWSSecret, choisissez le nom du secret.

      2. Choisissez Remplir pour renseigner automatiquement toutes les valeurs dans la boîte de dialogue de connexion à la base de données depuis Secrets Manager.

      Pour plus d'informations sur l'utilisation des informations d'identification de base de données depuis Secrets Manager, reportez-vous à la sectionUtiliser AWS Secrets Manager.

    • Pour saisir manuellement les informations de connexion à la base de données source Netezza, suivez les instructions suivantes :

      Paramètre Action
      Server name

      Entrez le nom du système de noms de domaine (DNS) ou l'adresse IP de votre serveur de base de données source.

      Server port

      Indiquez le port utilisé pour vous connecter au serveur de la base de données source.

      User name et Password

      Entrez les informations d'identification de la base de données pour vous connecter à votre serveur de base de données source.

      AWS SCTutilise le mot de passe pour se connecter à votre base de données source uniquement lorsque vous choisissez de vous connecter à votre base de données dans le cadre d'un projet. Pour éviter d'exposer le mot de passe de votre base de données source, AWS SCT ne le stocke pas par défaut. Si vous fermez et rouvrez votre projet AWS SCT, vous êtes invité à entrer le mot de passe pour vous connecter à la base de données source, si nécessaire.

      Mot de passe du magasin

      AWS SCT crée un coffre-fort sécurisé pour stocker les certificats SSL et les mots de passe de base de données. En activant cette option, vous pouvez enregistrer le mot de passe de la base de données et vous connecter rapidement à la base de données sans avoir à saisir le mot de passe.

      Parcours du chauffeur Netezza

      Entrez le chemin d'accès au pilote à utiliser pour vous connecter à la base de données source. Pour plus d'informations, veuillez consulter Téléchargement des pilotes de base de données requis.

      Si vous stockez le chemin d'accès au pilote dans les paramètres globaux du projet, il ne s'affiche pas dans la boîte de dialogue de connexion. Pour plus d'informations, veuillez consulter Stockage des chemins des pilotes dans les paramètres globaux.

  5. Choisissez Tester la connexion pour vérifier qu'elle AWS SCT peut se connecter à votre base de données source.

  6. Choisissez Connect pour vous connecter à votre base de données source.

Configuration de la réplication continue des données

Après avoir converti vos schémas de base de données Netezza et les avoir appliqués à votre base de données Amazon Redshift, vous pouvez migrer les données à l'aide AWS SCT d'agents d'extraction de données. L'agent extrait vos données et les télécharge dans votre compartiment Amazon S3. Vous pouvez ensuite l'utiliser AWS SCT pour copier les données d'Amazon S3 vers Amazon Redshift.

Si les données de votre base de données source changent au cours du processus de migration, vous pouvez capturer les modifications continues à l'aide de vos agents d'extraction de AWS SCT données. Vous pouvez ensuite répliquer ces modifications continues dans votre base de données cible après avoir terminé la migration initiale des données. Ce processus est appelé réplication continue des données ou capture de données modifiées (CDC).

Pour configurer la réplication continue des données pour les migrations de Netezza vers Amazon Redshift
  1. Dans votre base de données source, créez une base de données d'historique. Vous pouvez utiliser l'exemple de code suivant dans l'interface de ligne de commande (CLI) de Netezza.

    nzhistcreatedb -d history_database_name -t query -v 1 -u load_user -o histdb_owner -p your_password

    Dans l'exemple précédent, remplacez history_database_name par le nom de votre base de données d'historique. Remplacez ensuite load_user par le nom de l'utilisateur que vous avez défini pour charger les données d'historique dans la base de données. Remplacez ensuite histdb_owner par le nom de l'utilisateur que vous avez défini comme propriétaire de la base de données d'historique. Assurez-vous que vous avez déjà créé cet utilisateur et que vous avez accordé l'CREATE DATABASEautorisation. Enfin, remplacez your_password par un mot de passe sécurisé.

  2. Configurez la journalisation de l'historique. Pour ce faire, utilisez l'exemple de code suivant.

    CREATE HISTORY CONFIGURATION history_configuration_name HISTTYPE QUERY DATABASE history_database_name USER load_user PASSWORD your_password COLLECT PLAN, COLUMN LOADINTERVAL 1 LOADMINTHRESHOLD 0 LOADMAXTHRESHOLD 0 STORAGELIMIT 25 LOADRETRY 2 VERSION 1;

    Dans l'exemple précédent, remplacez history_configuration_name et history_database_name par les noms de votre configuration d'historique et de votre base de données d'historique. Remplacez ensuite load_user par le nom de l'utilisateur que vous avez défini pour charger les données d'historique dans la base de données. Remplacez ensuite your_password par un mot de passe sécurisé.

  3. Accordez des autorisations de lecture pour toutes les tables de la base de données d'historique. Vous pouvez utiliser l'exemple de code suivant pour accorder l'SELECTautorisation.

    GRANT SELECT ON history_database_name.ALL.TABLE TO your_user;

    Dans l'exemple précédent, remplacez history_database_name par le nom de votre base de données d'historique. Ensuite, remplacez your_user par le nom de l'utilisateur disposant des autorisations minimales nécessaires pour travailler avec votre base de données Netezza. Vous utilisez les informations d'identification de cet utilisateur de base de données dansAWS SCT.

  4. Collectez des statistiques pour chaque table de votre schéma source afin d'obtenir des informations sur la cardinalité des colonnes. Vous pouvez utiliser la commande suivante pour générer des statistiques dans votre base de données d'historique.

    GENERATE STATISTICS on "schema_name"."table_name";

    Dans l'exemple précédent, remplacez schema_name et table_name par le nom du schéma et de la table de votre base de données.

  5. Assurez-vous que vous avez rempli les prérequis en exécutant la requête suivante :

    SELECT COUNT(*) FROM history_database_name.history_schema_name."$hist_column_access_N";

    Dans l'exemple précédent, remplacez history_database_name et history_schema_name par le nom de votre base de données d'historique et de votre schéma. Ensuite, remplacez N par le numéro de version de votre base de données d'historique. Pour plus d'informations sur les versions des bases de données historiques, consultez la documentation IBM Netezza.

  6. Installez vos agents d'extraction de données. Pour plus d'informations, veuillez consulter Installation d'agents d'extraction.

    Assurez-vous que le {working.folder} paramètre du settings.properties fichier pour toutes les instances d'extracteur pointe vers le même dossier. Dans ce cas, vos extracteurs peuvent coordonner la session CDC et utiliser un point de transaction unique pour toutes les sous-tâches.

  7. Enregistrez votre agent d'extraction de données. Pour plus d'informations, veuillez consulter Enregistrement des agents d'extraction auprès du AWS Schema Conversion Tool.

  8. Créez votre tâche CDC. Pour plus d'informations, veuillez consulter Création, exécution et surveillance d'une AWS SCT tâche.

    1. Ouvrez votre projet dansAWS SCT. Dans le volet de gauche, choisissez votre table source. Ouvrez le menu contextuel (clic droit) et choisissez Créer une tâche locale.

    2. Dans Nom de la tâche, entrez un nom descriptif pour votre tâche de migration de données.

    3. Pour le mode de migration, choisissez Extraire, télécharger et copier.

    4. Sélectionnez Activer le CDC.

    5. Choisissez l'onglet Paramètres du CDC et définissez l'étendue et le calendrier des sessions du CDC.

    6. Choisissez Tester la tâche pour vérifier que vous pouvez vous connecter à votre dossier de travail, à votre compartiment Amazon S3 et à l'entrepôt de données Amazon Redshift.

    7. Choisissez Créer pour créer votre tâche.

    8. Cliquez sur l'onglet Tâches, choisissez votre tâche dans la liste, puis cliquez sur Démarrer.

  9. La AWS SCT tâche assure la cohérence transactionnelle dans la base de données cible. L'agent d'extraction de données reproduit les transactions à partir de la source dans l'ordre des numéros de transaction.

    Si vous arrêtez l'une des sessions de migration ou si elle échoue, le traitement du CDC s'arrête également.

Paramètres de conversion de Netezza vers Amazon Redshift

Pour modifier les paramètres de conversion de Netezza vers Amazon Redshift, choisissez Paramètres dansAWS SCT, puis Paramètres de conversion. Dans la liste supérieure, choisissez Netezza, puis Netezza — Amazon Redshift. AWS SCTaffiche tous les paramètres disponibles pour la conversion de Netezza vers Amazon Redshift.

Les paramètres de conversion de Netezza vers Amazon Redshift AWS SCT incluent des options pour les éléments suivants :

  • Pour limiter le nombre de commentaires contenant des actions dans le code converti.

    Pour Ajouter des commentaires dans le code converti pour les actions de gravité sélectionnée ou supérieure, choisissez la gravité des actions. AWS SCTajoute des commentaires dans le code converti pour les actions ayant le niveau de gravité sélectionné ou supérieur.

    Par exemple, pour minimiser le nombre de commentaires dans votre code converti, sélectionnez Erreurs uniquement. Pour inclure des commentaires pour toutes les actions dans votre code converti, choisissez Tous les messages.

  • Pour définir le nombre maximum de tables AWS SCT pouvant s'appliquer à votre cluster Amazon Redshift cible.

    Pour le nombre maximum de tables pour le cluster Amazon Redshift cible, choisissez le nombre de tables qui AWS SCT peuvent s'appliquer à votre cluster Amazon Redshift.

    Amazon Redshift dispose de quotas qui limitent les tables d'utilisation pour différents types de nœuds de cluster. Si vous choisissez Auto, AWS SCT détermine le nombre de tables à appliquer à votre cluster Amazon Redshift cible en fonction du type de nœud. Vous pouvez également choisir la valeur manuellement. Pour plus d'informations, consultez Quotas et limites dans Amazon Redshift dans le Guide de gestion Amazon Redshift.

    AWS SCTconvertit toutes vos tables source, même si ce volume est supérieur à ce que votre cluster Amazon Redshift peut stocker. AWS SCTstocke le code converti dans votre projet et ne l'applique pas à la base de données cible. Si vous atteignez le quota de cluster Amazon Redshift pour les tables lorsque vous appliquez le code converti, AWS SCT affiche un message d'avertissement. AWS SCTApplique également des tables à votre cluster Amazon Redshift cible jusqu'à ce que le nombre de tables atteigne la limite.

  • Pour appliquer une compression aux colonnes d'un tableau Amazon Redshift. Pour ce faire, sélectionnez Utiliser le codage de compression.

    AWS SCTattribue automatiquement un codage de compression aux colonnes à l'aide de l'algorithme Amazon Redshift par défaut. Pour plus d'informations, consultez les codages de compression dans le manuel Amazon Redshift Database Developer Guide.

    Par défaut, Amazon Redshift n'applique pas de compression aux colonnes définies comme des clés de tri et de distribution. Vous pouvez modifier ce comportement et appliquer une compression à ces colonnes. Pour ce faire, sélectionnez Utiliser le codage de compression pour les colonnes KEY. Vous pouvez sélectionner cette option uniquement lorsque vous sélectionnez l'option Utiliser le codage de compression.

Paramètres d'optimisation de la conversion de Netezza vers Amazon Redshift

Pour modifier les paramètres d'optimisation de conversion de Netezza vers Amazon Redshift, choisissez Paramètres dansAWS SCT, puis Paramètres de conversion. Dans la liste supérieure, choisissez Netezza, puis Netezza — Amazon Redshift. Dans le volet de gauche, choisissez Stratégies d'optimisation. AWS SCTaffiche les paramètres d'optimisation de conversion pour la conversion de Netezza vers Amazon Redshift.

Les paramètres d'optimisation de la conversion de Netezza vers Amazon Redshift AWS SCT incluent des options pour les éléments suivants :

  • Pour travailler avec l'optimisation automatique des tableaux. Pour ce faire, sélectionnez Utiliser le réglage automatique des tableaux d'Amazon Redshift.

    L'optimisation automatique des tableaux est un processus de réglage automatique d'Amazon Redshift qui optimise automatiquement la conception des tableaux. Pour plus d'informations, consultez la section Utilisation de l'optimisation automatique des tables dans le manuel Amazon Redshift Database Developer Guide.

    Pour vous fier uniquement à l'optimisation automatique des tables, choisissez Aucune pour la stratégie initiale de sélection des clés.

  • Pour choisir les clés de tri et de distribution selon votre stratégie.

    Vous pouvez choisir des clés de tri et de distribution en utilisant les métadonnées Amazon Redshift, les informations statistiques ou les deux. Pour la stratégie initiale de sélection des clés dans l'onglet Stratégies d'optimisation, choisissez l'une des options suivantes :

    • Utilisez des métadonnées, ignorez les informations statistiques

    • Ignorez les métadonnées, utilisez des informations statistiques

    • Utiliser des métadonnées et des informations statistiques

    Selon l'option que vous choisissez, vous pouvez sélectionner des stratégies d'optimisation. Ensuite, pour chaque stratégie, entrez la valeur (0—100). Ces valeurs définissent le poids de chaque stratégie. À l'aide de ces valeurs de pondération, AWS SCT définit l'influence de chaque règle sur le choix des clés de distribution et de tri. Les valeurs par défaut sont basées sur les meilleures pratiques de AWS migration.

    Vous pouvez définir la taille des petites tables pour la stratégie Find small tables. Pour Nombre minimum de lignes de tableau et Nombre maximum de lignes de tableau, entrez le nombre minimum et maximum de lignes dans un tableau pour le définir comme un petit tableau. AWS SCTapplique le style ALL de distribution aux petits tableaux. Dans ce cas, une copie de la table complète est distribuée à chaque nœud.

  • Pour configurer les détails de la stratégie.

    Outre la définition du poids pour chaque stratégie d'optimisation, vous pouvez configurer les paramètres d'optimisation. Pour ce faire, choisissez Optimisation des conversions.

    • Pour la limite de colonnes de la clé de tri, entrez le nombre maximum de colonnes dans la clé de tri.

    • Pour Valeur de seuil asymétrique, entrez le pourcentage (0—100) d'une valeur asymétrique pour une colonne. AWS SCTexclut les colonnes dont la valeur d'inclinaison est supérieure au seuil de la liste des candidats pour la clé de distribution. AWS SCTdéfinit la valeur asymétrique d'une colonne comme le rapport en pourcentage entre le nombre d'occurrences de la valeur la plus courante et le nombre total d'enregistrements.

    • Pour les N requêtes les plus fréquentes du tableau d'historique des requêtes, entrez le nombre (1 à 100) des requêtes les plus fréquemment utilisées à analyser.

    • Dans Sélectionner l'utilisateur des statistiques, choisissez l'utilisateur de base de données pour lequel vous souhaitez analyser les statistiques de la requête.

    Dans l'onglet Stratégies d'optimisation, vous pouvez également définir la taille des petites tables pour la stratégie Trouver des petites tables. Pour Nombre minimum de lignes de tableau et Nombre maximum de lignes de tableau, entrez le nombre minimum et maximum de lignes dans un tableau pour le considérer comme un petit tableau. AWS SCTapplique le style ALL de distribution aux petits tableaux. Dans ce cas, une copie de la table complète est distribuée à chaque nœud.