Sélection de la meilleure taille pour une instance de réplication - AWS Service de Migration de Base de Données

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.

Sélection de la meilleure taille pour une instance de réplication

Le choix de l'instance de réplication appropriée dépend de plusieurs facteurs propres à votre cas d'utilisation. Pour mieux comprendre comment les ressources d'instance de réplication sont utilisées, consultez la discussion suivante. Il couvre le scénario courant d'une CDC tâche à chargement complet +.

Au cours d'une tâche de chargement complet, AWS DMS charge les tables individuellement. Par défaut, huit tables sont chargées à la fois. AWS DMS capture les modifications continues apportées à la source pendant une tâche de chargement complet afin que les modifications puissent être appliquées ultérieurement sur le point de terminaison cible. Ces modifications sont mises en cache en mémoire ; si la mémoire disponible est épuisée, les modifications sont mises en cache sur le disque. Lorsqu'une tâche de chargement complet est terminée pour une table, AWS DMS applique immédiatement les modifications mises en cache à la table cible.

Une fois que toutes les modifications mises en cache pour une table ont été appliquées, le point de terminaison cible se trouve dans un état transactionnel cohérent. À ce stade, la cible est synchronisée avec le point de terminaison source en ce qui concerne les dernières modifications mises en cache. AWS DMS commence ensuite la réplication continue entre la source et la cible. Pour ce faire, AWS DMS prend les opérations de modification à partir des journaux de transactions source et les applique à la cible de manière cohérente sur le plan des transactions. (Ce processus suppose que l'option Appliquer optimisée par lots n'est pas sélectionnée). AWS DMS diffuse les modifications en cours via la mémoire de l'instance de réplication, si possible. Dans le cas contraire, AWS DMS écrit les modifications sur le disque de l'instance de réplication jusqu'à ce qu'elles puissent être appliquées à la cible.

Vous pouvez contrôler la façon dont l'instance de réplication gère le traitement des modifications et la façon dont la mémoire est utilisée dans ce processus. Pour plus d'informations sur la manière d'ajuster le traitement des modifications, consultez Paramètres de réglage du traitement des modifications.

Facteurs à prendre en compte

La mémoire et l’espace disque sont des facteurs clés pour la sélection d’une instance de réplication appropriée à votre cas d’utilisation. Vous trouverez ci-dessous une présentation des caractéristiques des cas d’utilisation à analyser pour choisir une instance de réplication.

  • Taille des tables et de la base de données

    Le volume de données permet de déterminer la configuration des tâches afin d’optimiser les performances de chargement complet. Par exemple, pour deux schémas de 1 To, vous pouvez partitionner les tables en quatre tâches de 500 Go et les exécuter en parallèle. Le parallélisme possible dépend de la CPU ressource disponible dans l'instance de réplication. C’est pourquoi il est judicieux de connaître la taille de votre base de données et de vos tables afin d’optimiser les performances de chargement complet. Cela permet de déterminer le nombre de tâches que vous pouvez éventuellement effectuer.

  • Objets volumineux

    Les types de données présents dans l’étendue de migration peuvent affecter les performances. Les objets volumineux (LOBs) ont notamment un impact sur les performances et la consommation de mémoire. Pour migrer une LOB valeur, AWS DMS exécute un processus en deux étapes. Tout d'abord, AWS DMS insère la ligne dans la cible sans la LOB valeur. Deuxièmement, AWS DMS met à jour la ligne avec la LOB valeur. Cela a un impact sur la mémoire, il est donc important d'identifier les LOB colonnes de la source et d'analyser leur taille.

  • Fréquence de chargement et taille des transactions

    La fréquence de chargement et les transactions par seconde (TPS) influencent l'utilisation de la mémoire. Un nombre élevé d'activités TPS ou d'activités du langage de manipulation des données (DML) entraîne une utilisation importante de la mémoire. Cela se produit car les modifications sont DMS mises en cache jusqu'à ce qu'elles soient appliquées à la cible. Pendant ce tempsCDC, cela entraîne un échange (écriture sur le disque physique en raison d'un débordement de mémoire), ce qui entraîne une latence.

  • Clés de table et intégrité référentielle

    Les informations relatives aux clés de la table déterminent le CDC mode (application par lots ou application transactionnelle) que vous utilisez pour migrer les données. En général, l’application transactionnelle est plus lente que l’application par lots. Pour les transactions de longue durée, il peut y avoir de nombreuses modifications à migrer. Lorsque vous utilisez l'application transactionnelle, AWS DMS peut nécessiter plus de mémoire pour stocker les modifications par rapport à l'application par lots. Si vous migrez des tables sans clés primaires, l'application par lots échouera et la DMS tâche passera en mode d'application transactionnelle. Lorsque l'intégrité référentielle est active entre les tables pendantCDC, AWS DMS utilise l'application transactionnelle par défaut. Pour plus d'informations sur l'application par lots par rapport à l'application transactionnelle, voir Comment utiliser la fonctionnalité d'application DMS par lots pour améliorer les performances de CDC réplication ? .

Utilisez ces métriques pour déterminer si l’instance de réplication doit être optimisée pour le calcul ou pour la mémoire.

Problèmes courants

Vous pouvez être confronté aux problèmes courants suivants qui entraînent une contention des ressources sur l’instance de réplication lors de la migration. Pour en savoir plus sur les métriques de l’instance de réplication, consultez Métriques des instances de réplication.

  • Si la mémoire d’une instance de réplication devient insuffisante, cela entraîne l’écriture de données sur le disque. La lecture depuis le disque peut entraîner une latence, que vous pouvez éviter en dimensionnant l’instance de réplication avec suffisamment de mémoire.

  • La taille de disque attribuée à l’instance de réplication peut être inférieure à celle requise. La taille du disque est utilisée quand les données en mémoire débordent ; elle est également utilisée pour stocker les journaux de tâches. Le maximum en IOPS dépend également.

  • L'exécution de plusieurs tâches ou de tâches présentant un parallélisme élevé affecte la CPU consommation de l'instance de réplication. Cela ralentit le traitement des tâches et génère de la latence.

Bonnes pratiques

Tenez compte de ces deux bonnes pratiques les plus courantes lors du dimensionnement d’une instance de réplication. Pour de plus amples informations, veuillez consulter Bonnes pratiques pour AWS Database Migration Service.

  1. Dimensionnez votre charge de travail et déterminez si elle est gourmande en ressources informatiques ou en mémoire. Sur cette base, vous pouvez déterminer la classe et la taille de l’instance de réplication :

    • AWS DMS processus LOBs en mémoire. Cette opération nécessite une quantité importante de mémoire.

    • Le nombre de tâches et le nombre de threads ont un impact sur CPU la consommation. Évitez d’en utiliser plus de huit MaxFullLoadSubTasks pendant l’opération de chargement complet.

  2. Augmentez l’espace disque attribué à l’instance de réplication lorsque la charge de travail est élevée pendant le chargement complet. Cela permet à l'instance de réplication d'utiliser le maximum IOPS qui lui est attribué.

Les directives précédentes ne couvrent pas tous les scénarios possibles. Il est important de prendre en compte les spécificités de votre cas d’utilisation particulier lorsque vous déterminez la taille de votre instance de réplication.

Les tests précédents montrent CPU que la mémoire varie en fonction des différentes charges de travail. En particulier, LOBs cela affecte la mémoire, et le nombre de tâches ou le parallélisme affectent le. CPU Une fois la migration en cours, surveillez la CPU mémoire disponible, le stockage libre et votre instance IOPS de réplication. En fonction des données que vous collectez, vous pouvez dimensionner votre instance de réplication à la hausse ou à la baisse, selon les besoins.