Quand dois-je redémarrer et reprendre ma tâche AWS DMS dont l'état est Stopped (Arrêté) ou Failed (Échec) ?

Lecture de 7 minute(s)
0

J'ai une tâche AWS Database Migration Service (AWS DMS) dont l'état est Stopped (Arrêté) ou Failed (Échec). Quand dois-je reprendre ou redémarrer ma tâche AWS DMS pour poursuivre la réplication ?

Brève description

Lorsque l'état de votre tâche AWS DMS est arrêté ou échoué, vous disposez de deux options pour vous permettre de poursuivre la réplication :

  • Reprendre : lorsque vous reprenez une tâche, AWS DMS poursuit la réplication et reprend à partir du moment juste avant l'arrêt ou l'échec de la tâche.
  • Redémarrer : lorsque vous redémarrez une tâche, AWS DMS recommence la réplication depuis le début et utilise le mode de préparation des tables que vous avez choisi lors de la création de la tâche. Par exemple, les modes de préparation de table incluent Déposer la table sur la cible, Tronquer et Ne rien faire. Pour plus d'informations, consultez la section Paramètres de tâche de chargement complet (langue Français non garantie).

Le comportement des actions de reprise et de redémarrage varie en fonction de l'une des trois méthodes de migration AWS DMS que vous utilisez. Ces méthodes incluent : la charge complète, la charge complète et la collecte des données (CDC) et la migration CDC uniquement. Pour plus d'informations, consultez la section Création d'une tâche.

Solution

Migration des données existantes (charge complète)

Pour une tâche de charge complète, si vous choisissez de démarrer la tâche manuellement lors de la création de la tâche, utilisez alors l'action de redémarrage dans la console AWS DMS pour démarrer la réplication. Celle-ci recharge toutes les tables dans la migration.

Vous pouvez également utiliser l'option recharger les données de table pour recharger des tables spécifiques qui ont échoué lors de la migration. Cela signifie que les tables déjà chargées n'ont pas besoin d'être chargées à nouveau, et que toutes les tables qui n'ont pas terminé de se charger sont à nouveau chargées.

Si vous utilisez l'option de reprise lors de la migration de plusieurs tables, les tables dont la migration n'est pas terminée repartent de zéro. Les tables dont la migration est terminée ne sont pas affectées. Si vous migrez une seule table, il est recommandé de redémarrer la tâche plutôt que d'utiliser l'option de reprise.

Migration des données existantes et modifications continues de la réplication (charge complète et CDC)

Lorsque vous utilisez une tâche de charge complète et de CDC, AWS DMS migre les données des tables, puis applique les modifications de données qui se produisent sur la source. Si vous redémarrez la tâche, cela charge à nouveau toutes les tables et l'enregistrement des modifications de la source commence à partir du moment du redémarrage. Si votre tâche est configurée avec le mode de préparation Ne rien faire, videz manuellement les tables cibles avant de redémarrer la tâche.

Si vous reprenez la tâche, seules les modifications enregistrées après le dernier point d'arrêt sont appliquées à la base de données. Si la tâche de migration s'arrête pendant la phase CDC, AWS DMS conserve les informations du point de contrôle pour une utilisation future. Vous pouvez consulter le point de contrôle de la tâche dans l'onglet Informations générales de la console AWS DMS.

Réplication des modifications de données uniquement (CDC uniquement)

Si vous utilisez une tâche CDC uniquement, vous pouvez commencer à enregistrer les modifications des données sources soit à partir de l'heure actuelle, soit à partir du point de départ CDC. Si vous redémarrez la tâche alors qu'un point de départ CDC est défini, l'opération de rechargement charge toutes les modifications à partir de ce moment. Si vous redémarrez une tâche sans point de départ CDC, les modifications CDC entre le moment où la tâche a été arrêtée à celui où elle a été redémarrée sont perdues.

L'opération de reprise continue de répliquer les modifications depuis le dernier point d'arrêt, quelle que soit la configuration du point de départ CDC. Si vous redémarrez une tâche avec un mode de préparation Tronquer la table cible, AWS DMS conserve les tables cibles existantes et leurs métadonnées. Cependant, il supprime toutes les données existantes de ces tables avant de redémarrer la migration.

Scénarios courants pour la reprise ou le redémarrage d'une tâche AWS DMS

Voici quelques exemples courants de situations dans lesquelles vous pouvez utiliser les opérations de reprise ou de redémarrage sur votre tâche AWS DMS.

Redémarrez la tâche AWS DMS :

  • Si le système de gestion de base de données (DBMS) source ne contient pas les fichiers journaux de récupération ou les fichiers journaux de transactions pour reprendre le processus CDC, redémarrez la tâche. Le redémarrage de la tâche charge toutes les données de la table et continue d'enregistrer les modifications.
  • Si une tâche AWS DMS est à l'état Error (Erreur), cela signifie qu'une ou plusieurs des tables de la tâche n'ont pas pu être migrées. À l'état Error (Erreur), la tâche continue de charger d'autres tables à partir de la règle de sélection, mais une tâche à l'état Failed (Échec) s'arrête avec des erreurs irrécupérables. Une fois les erreurs résolues, rechargez les tables ou redémarrez la tâche pour résoudre l'état Error (Erreur). Pour plus d'informations, consultez Pourquoi ma tâche AWS DMS présente-t-elle un statut d'erreur ?
  • Si une tâche de charge complète et de CDC ou une tâche CDC uniquement est arrêtée, les modifications de données peuvent se propager de la mémoire au disque. Selon le volume de données modifiées déplacées sur le disque, la reprise d'une tâche peut prendre beaucoup de temps avant de poursuivre la réplication. Cela est dû au fait qu'AWS DMS met plus de temps à lire ces modifications sur le disque. Donc, si possible, relancez la tâche pour éviter ce temps d'attente.
  • Si vous passez de l'utilisation d'Oracle LogMiner à celle d'AWS DMS Binary Reader, assurez-vous de redémarrer la tâche CDC.
    Remarque : après avoir modifié la méthode CDC, si vous redémarrez une tâche CDC uniquement configurée avec un point de contrôle de récupération CDC, vous pouvez voir une erreur semblable à la suivante :
    « [SOURCE_CAPTURE] D: contexte non valide fourni pour le CDC basé sur Binary Reader. Le redémarrage de la tâche est obligatoire. »
    Pour résoudre cette erreur, lancez la tâche en fonction de l'horodatage du point de départ du CDC.

Reprendre la tâche AWS DMS :

  • Si vous déplacez une tâche vers une nouvelle instance de réplication, reprenez-la pour continuer de répliquer les modifications à partir du dernier arrêt.
  • Si vous souhaitez mettre à niveau vos bases de données source ou cible, arrêtez toutes les tâches AWS DMS qui s'exécutent sur ces bases de données. Reprenez vos tâches une fois vos mises à niveau terminées.
  • Si vous envisagez de mettre à niveau vos bases de données source ou cible, arrêtez toutes les tâches AWS DMS qui s'exécutent sur ces bases de données. Reprenez les tâches une fois vos mises à niveau terminées. Toutefois, pour effectuer une mise à niveau de la version du moteur PostgreSQL, vous ne pouvez pas avoir d'emplacements de réplication sur l'instance. Supprimez donc tous les emplacements de réplication avant de mettre à niveau votre moteur, puis redémarrez la tâche pour recréer l'emplacement de réplication.

Informations connexes

Sources pour la migration des données

Utilisation d'une instance de réplication AWS DMS

Redémarrage d'une instance de réplication

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an