Gleichzeitigkeitserkennung für Streams

Mit den Einstellungen für die Stream-Nebenläufigkeit in Datastream können Sie die maximale Anzahl paralleler CDC-Aufgaben (Change Data Capture) und Backfill-Aufgaben verwalten, die ein Stream ausführt. Sie können diese Parameter in der Datastream API anpassen, um den Replikationsdurchsatz zu erhöhen oder die Last auf Ihrer Quelldatenbank zu begrenzen.

Übersicht über die Nebenläufigkeitserkennung

Mit den Nebenläufigkeitserkennungen können Sie entweder einen schnelleren Backfill und CDC erreichen oder die Last auf der Quelldatenbank ausgleichen. Wenn Sie einen höheren Durchsatz benötigen und eine höhere Last auf der Datenbank verkraften können, können Sie die Nebenläufigkeit von CDC- und Backfill-Aufgaben erhöhen. Wenn Ihre Datenbank dagegen stark ausgelastet ist und Sie sie vor Überlastung schützen möchten, können Sie die Werte dieser Parameter reduzieren.

Maximale Anzahl von CDC-Aufgaben

Mit dem Parameter maxConcurrentCdcTasks können Sie die Anzahl der CDC-Aufgaben steuern, die ein Stream parallel ausführt. Wenn Sie den CDC-Durchsatz erhöhen möchten, erhöhen Sie den Wert dieses Parameters und ermöglichen Sie Datastream, mehr CDC-Logdateien gleichzeitig zu verarbeiten.

Die wichtigsten Merkmale des Parameters sind:

  • Der Standardwert ist 5. Sie können diesen Parameter auf einen beliebigen Wert zwischen 1 und 50 (einschließlich) festlegen.
  • Der Parameter gilt nur für Oracle- und MySQL-Quellen.
  • Der Parameter hat nur dann Auswirkungen, wenn mehr Datenbank-Logdateien zum Lesen verfügbar sind als CDC-Aufgaben. Die Einstellungen für die Logdateien werden durch die Konfigurationsparameter der Quelldatenbank gesteuert: die maximale Logdateigröße und das maximale Zeitintervall für die Logrotation. Weitere Informationen zu diesen Parametern finden Sie in der Oracle- und MySQL-Dokumentation.
  • Wenn Sie die Anzahl der gleichzeitigen CDC-Aufgaben verringern, kann es sein, dass Datastream hinter den Datenbanklogs zurückbleibt, was letztendlich zu einem Verlust der Logposition und einem Streamfehler führen kann.

Maximale Anzahl von Backfill-Aufgaben

Mit dem Parameter maxConcurrentBackfillTasks können Sie die Anzahl der Backfill-Aufgaben steuern, die ein Stream parallel ausführen kann. Sie können diesen Wert erhöhen oder verringern, um den Backfill-Durchsatz zu steuern.

Die wichtigsten Merkmale des Parameters sind:

  • Der Standardwert ist 15. Sie können diesen Parameter auf einen beliebigen Wert zwischen 1 und 50 (einschließlich) festlegen.
  • Die Erhöhung der Nebenläufigkeit von Backfills ist mit einem hohen Risiko verbunden, da Backfill-Aufgaben erhebliche Auswirkungen auf die Datenbankleistung haben. Bei jeder Backfill-Aufgabe wird eine ungefilterte SELECT-Abfrage für eine Tabelle ausgeführt. Bei großen Tabellen geben solche Abfragen eine große Anzahl von Zeilen zurück.
  • Wenn Sie die Nebenläufigkeit des Backfills verringern, hat dies keine negativen Auswirkungen auf die Quelldatenbank, außer dass der Backfill länger dauert.

Werte der Nebenläufigkeitserkennung ändern

Sie können die Werte der Parameter für die Nebenläufigkeitserkennung mit der Datastream API ändern.

Nächste Schritte