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.
Connexion à Netezza avec AWS Schema Conversion Tool
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 en tant que source :
-
sélectionnez sur la vue system.definition_schema.system
-
sélectionnez sur la table system.definition_schema.system
-
sélectionnez sur la table system.definition_schema.management
-
liste sur
<database_name>
-
liste sur
<schema_name>
-
liste sur
<database_name>
.toutes les tables -
liste sur
<database_name>
.all.table externe -
liste sur
<database_name>
.all.view -
liste sur
<database_name>
vue .all.materialisée -
liste sur
<database_name>
.all.procédure -
liste sur
<database_name>
.all.sequence -
liste sur
<database_name>
.toutes les fonctions -
liste sur
<database_name>
.tous les agrégats
Dans l'exemple précédent, remplacez les espaces réservés comme suit :
-
Remplacez
database_name
avec le nom de la base de données source. -
Remplacez
schema_name
avec le nom du schéma source.
AWS SCT né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
dans la liste précédente.
sélectionnez sur system.definition_schema. _t_aggregate
sélectionnez sur system.definition_schema. _t_class
sélectionnez sur system.definition_schema. _t_contrainte
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_grpobj_priv
sélectionnez sur system.definition_schema. _t_groupes
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_aggregate
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. _v_datatype
sélectionnez sur system.definition_schema. _v_dslice
sélectionnez sur system.definition_schema. fonction _v
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. Colonne _v_relation_
sélectionnez sur system.definition_schema. _v_relation_keydata
sélectionnez sur system.definition_schema. classes _v_relobj
sélectionnez sur system.definition_schema. _v_schema_xdb
sélectionnez sur system.definition_schema. _v_séquence
sélectionnez sur system.definition_schema. _v_synonyme
sélectionnez sur system.definition_schema. _v_système_info
sélectionnez sur system.definition_schema. _v_sys_contrainte
sélectionnez sur system.definition_schema. _v_sys_object_dslice_info
sélectionnez sur system.definition_schema. _v_sys_utilisateur
sélectionnez sur system.definition_schema. _v_table
sélectionnez sur system.definition_schema. _v_table_contrainte
sélectionnez sur system.definition_schema. _v_table_dist_map
sélectionnez sur system.definition_schema. _v_table_organiser_colonne
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. Colonne _v_relation_
sélectionnez sur system.information_schema. _v_table
sélectionnez $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
-
Dans le AWS Schema Conversion Tool, choisissez Ajouter une source.
-
Choisissez Netezza, puis Next.
La boîte de dialogue Ajouter une source apparaît.
-
Dans Nom de connexion, entrez le nom de votre base de données. AWS SCT affiche ce nom dans l'arborescence du panneau de gauche.
-
Utilisez les informations d'identification de la base de données AWS Secrets Manager ou saisissez-les manuellement :
-
Pour utiliser les informations d'identification de base de données issues de Secrets Manager, suivez les instructions suivantes :
-
Pour AWS Secret, choisissez le nom du secret.
-
Choisissez Populer 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, consultezConfiguration AWS Secrets Manager dans le AWS Schema Conversion Tool.
-
-
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 SCT utilise 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, le mot de passe AWS SCT n'est pas stocké 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.
Enregistrer le mot de passe AWS SCT crée un coffre-fort sécurisé pour stocker les SSL certificats 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.
Trajectoire du conducteur Netezza Entrez le chemin d'accès au pilote à utiliser pour vous connecter à la base de données source. Pour de plus amples informations, veuillez consulter Installation de JDBC pilotes pour AWS Schema Conversion Tool.
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 de plus amples informations, veuillez consulter Stockage des chemins des pilotes dans les paramètres globaux.
-
-
Choisissez Tester la connexion pour vérifier que AWS SCT vous pouvez vous connecter à votre base de données source.
-
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 d'agents d'extraction de données. AWS SCT L'agent extrait vos données et les télécharge dans votre compartiment Amazon S3. Vous pouvez ensuite les 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 enregistrer les modifications en cours avec vos agents d'extraction de AWS SCT données. Vous pouvez ensuite répliquer ces modifications en cours 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 des données de modification (CDC).
Pour configurer la réplication continue des données pour les migrations de Netezza vers Amazon Redshift
-
Dans votre base de données source, créez une base de données historique. Vous pouvez utiliser l'exemple de code suivant dans l'interface de ligne de commande Netezza ()CLI.
nzhistcreatedb -d
history_database_name
-t query -v 1 -uload_user
-ohistdb_owner
-pyour_password
Dans l'exemple précédent, remplacez
history_database_name
avec le nom de votre base de données d'historique. Ensuite, remplacezload_user
avec le nom de l'utilisateur que vous avez défini pour charger les données d'historique dans la base de données. Ensuite, remplacezhistdb_owner
avec le nom de l'utilisateur que vous avez défini comme propriétaire de la base de données d'historique. Assurez-vous d'avoir déjà créé cet utilisateur et d'avoir accordé l'CREATE DATABASE
autorisation. Enfin, remplacezyour_password
avec un mot de passe sécurisé. -
Configurez l'enregistrement de l'historique. Pour ce faire, utilisez l'exemple de code suivant.
CREATE HISTORY CONFIGURATION
history_configuration_name
HISTTYPE QUERY DATABASEhistory_database_name
USERload_user
PASSWORDyour_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
andhistory_database_name
avec les noms de votre configuration d'historique et de votre base de données d'historique. Ensuite, remplacezload_user
avec le nom de l'utilisateur que vous avez défini pour charger les données d'historique dans la base de données. Ensuite, remplacezyour_password
avec un mot de passe sécurisé. -
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'
SELECT
autorisation.GRANT SELECT ON
history_database_name
.ALL.TABLE TOyour_user
;Dans l'exemple précédent, remplacez
history_database_name
avec le nom de votre base de données d'historique. Ensuite, remplacezyour_user
avec le nom de l'utilisateur disposant d'autorisations minimales pour utiliser votre base de données Netezza. Vous utilisez les informations d'identification de cet utilisateur de base de données dans AWS SCT. -
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
andtable_name
avec le nom du schéma et de la table de votre base de données. -
Vérifiez que vous avez rempli les conditions requises 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
andhistory_schema_name
avec le nom de votre base de données historique et de votre schéma. Ensuite, remplacezN
avec 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 IBMNetezza. -
Installez vos agents d'extraction de données. Pour de plus amples informations, veuillez consulter Installation d'agents d'extraction.
Assurez-vous que le
{working.folder}
paramètre dusettings.properties
fichier pour toutes les instances de l'extracteur pointe vers le même dossier. Dans ce cas, vos extracteurs peuvent coordonner la CDC session et utiliser un point de transaction unique pour toutes les sous-tâches. -
Enregistrez votre agent d'extraction de données. Pour de plus amples informations, veuillez consulter Enregistrement des agents d'extraction auprès du AWS Schema Conversion Tool.
-
Créez votre CDC tâche. Pour de plus amples informations, veuillez consulter Création, exécution et surveillance d'une AWS SCT tâche.
-
Ouvrez votre projet dans AWS SCT. Dans le volet de gauche, choisissez votre table source. Ouvrez le menu contextuel (clic droit), puis choisissez Créer une tâche locale.
-
Dans Nom de la tâche, entrez un nom descriptif pour votre tâche de migration de données.
-
Pour le mode migration, choisissez Extraire, uploader et copier.
-
Sélectionnez ActiverCDC.
-
Choisissez l'onglet des CDCparamètres et définissez l'étendue et le calendrier des CDC sessions.
-
Choisissez Tâche de test pour vérifier que vous pouvez vous connecter à votre dossier de travail, à votre compartiment Amazon S3 et à votre entrepôt de données Amazon Redshift.
-
Choisissez Créer pour créer votre tâche.
-
Cliquez sur l'onglet Tâches, choisissez votre tâche dans la liste, puis sélectionnez Démarrer.
-
-
La AWS SCT tâche assure la cohérence transactionnelle dans la base de données cible. L'agent d'extraction de données réplique les transactions depuis 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 CDC traitement 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 AWS SCT dans, puis sélectionnez Paramètres de conversion. Dans la liste supérieure, choisissez Netezza, puis Netezza — Amazon Redshift. AWS SCT affiche tous les paramètres disponibles pour la conversion de Netezza vers Amazon Redshift.
Les paramètres de conversion de Netezza vers Amazon Redshift incluent des options pour AWS SCT 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 sévérité des actions. AWS SCT ajoute des commentaires dans le code converti pour les actions dont la gravité est sélectionnée ou supérieure.
Par exemple, pour réduire au maximum le nombre de commentaires dans votre code converti, choisissez Erreurs uniquement. Pour inclure les commentaires pour tous les éléments d’action de 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 l’utilisation des tables pour différents types de nœud 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 éventuellement choisir la valeur manuellement. Pour plus d’informations, consultez Quotas et limites dans Amazon Redshift dans le Guide de gestion Amazon Redshift.
AWS SCT convertit toutes vos tables sources, même si c'est plus que ce que votre cluster Amazon Redshift peut stocker. AWS SCT stocke 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, un message d'avertissement s' AWS SCT affiche. AWS SCT Applique é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 par compression.
AWS SCT attribue automatiquement un codage de compression aux colonnes à l'aide de l'algorithme Amazon Redshift par défaut. Pour plus d'informations, consultez la section Encodages 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 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 KEY colonnes. Vous ne pouvez sélectionner cette option que lorsque vous sélectionnez l'option Utiliser le codage par 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 AWS SCT dans, puis sélectionnez Paramètres de conversion. Dans la liste supérieure, choisissez Netezza, puis Netezza — Amazon Redshift. Dans le volet de gauche, sélectionnez Stratégies d'optimisation. AWS SCT affiche les paramètres d'optimisation des conversions pour la conversion de Netezza vers Amazon Redshift.
Les paramètres d'optimisation de la conversion de Netezza vers Amazon Redshift incluent des options pour AWS SCT les éléments suivants :
-
Pour travailler avec l'optimisation automatique des tables. Pour ce faire, sélectionnez Utiliser le réglage automatique des tables Amazon Redshift.
L'optimisation automatique des tables est un processus d'autoréglage dans Amazon Redshift qui optimise automatiquement la conception des tables. 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 à l'aide des métadonnées Amazon Redshift, des informations statistiques ou des deux options. Pour Stratégie initiale de sélection des clés dans l'onglet Stratégies d'optimisation, choisissez l'une des options suivantes :
Utiliser des métadonnées, ignorer les informations statistiques
Ignorer les métadonnées, utiliser 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. Entrez ensuite la valeur (0 à 100) pour chaque stratégie. 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 dans le cadre de 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 SCT applique le style
ALL
de distribution aux petites tables. 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 le champ Limite des colonnes clés de tri, entrez le nombre maximum de colonnes dans la clé de tri.
Pour une valeur de seuil asymétrique, entrez le pourcentage (0 à 100) d'une valeur asymétrique pour une colonne. AWS SCT exclut les colonnes dont la valeur d'inclinaison est supérieure au seuil de la liste des candidats pour la clé de distribution. AWS SCT définit la valeur asymétrique d'une colonne comme le pourcentage entre le nombre d'occurrences de la valeur la plus courante et le nombre total d'enregistrements.
Pour les N principales requêtes de la table d'historique des requêtes, entrez le nombre (1 à 100) des requêtes les plus fréquemment utilisées à analyser.
Pour Sélectionner un utilisateur de statistiques, choisissez l'utilisateur de base de données pour lequel vous souhaitez analyser les statistiques de requête.
Dans l'onglet Stratégies d'optimisation, vous pouvez également définir la taille des petites tables pour la stratégie Rechercher de petites tables. Pour Nombre minimal de lignes de tableau et Nombre maximal de lignes de tableau, entrez le nombre minimum et maximum de lignes dans un tableau pour le considérer comme un petit tableau. AWS SCT applique le style
ALL
de distribution aux petites tables. Dans ce cas, une copie de la table complète est distribuée à chaque nœud.