Contrôles de simultanéité des flux

Les contrôles de simultanéité des flux dans Datastream vous permettent de gérer le nombre maximal de tâches de capture de données modifiées (CDC) et de tâches de remplissage parallèles exécutées par un flux. Vous pouvez ajuster ces paramètres dans l'API Datastream pour augmenter le débit de réplication ou limiter la charge sur votre base de données source.

Présentation des contrôles de simultanéité

En utilisant les contrôles de simultanéité, vous pouvez accélérer le backfill et la CDC, ou équilibrer la charge sur la base de données source. Si vous avez besoin de débits plus élevés et que vous pouvez vous permettre une charge plus élevée sur la base de données, vous pouvez augmenter la simultanéité des tâches de CDC et de remplissage. À l'inverse, si votre base de données est soumise à une charge élevée et que vous souhaitez la protéger contre une surcharge, vous pouvez réduire les valeurs de ces paramètres.

Nombre maximal de tâches CDC

Le paramètre maxConcurrentCdcTasks vous permet de contrôler le nombre de tâches CDC qu'un flux exécute en parallèle. Pour étendre le débit CDC, augmentez la valeur de ce paramètre et autorisez Datastream à traiter davantage de fichiers journaux CDC en même temps.

Voici les principales caractéristiques du paramètre :

  • La valeur par défaut est 5. Vous pouvez définir ce paramètre sur n'importe quelle valeur comprise entre 1 et 50 inclus.
  • Ce paramètre ne s'applique qu'aux sources Oracle et MySQL.
  • Le paramètre n'a d'impact que s'il y a plus de fichiers journaux de base de données disponibles à lire que de tâches CDC. Les paramètres des fichiers journaux sont contrôlés par les paramètres de configuration de la base de données source : la taille maximale du fichier journal et l'intervalle de temps maximal de rotation des journaux. Pour en savoir plus sur ces paramètres, consultez la documentation Oracle et MySQL.
  • Si vous diminuez le nombre de tâches CDC simultanées, Datastream peut prendre du retard par rapport aux journaux de la base de données, ce qui peut entraîner une perte de position dans les journaux et l'échec du flux.

Nombre maximal de tâches de remplissage

Le paramètre maxConcurrentBackfillTasks vous permet de contrôler le nombre de tâches de backfill qu'un flux peut exécuter en parallèle. Vous pouvez augmenter ou diminuer cette valeur pour contrôler le débit de backfill.

Voici les principales caractéristiques du paramètre :

  • La valeur par défaut est 15. Vous pouvez définir ce paramètre sur n'importe quelle valeur comprise entre 1 et 50 inclus.
  • L'augmentation de la simultanéité du remplissage comporte un risque élevé, car les tâches de remplissage ont un impact significatif sur les performances de la base de données. Chaque tâche de backfill exécute une requête SELECT non filtrée sur une table. Pour les tables volumineuses, ces requêtes renvoient un grand nombre de lignes.
  • Si vous diminuez la simultanéité du backfill, cela n'a pas d'impact négatif sur la base de données source, sauf que le backfill prend plus de temps.

Modifier les valeurs des contrôles de simultanéité

Vous pouvez modifier les valeurs des paramètres de contrôle de simultanéité à l'aide de l'API Datastream.

Étapes suivantes