Gleichzeitigkeitserkennung für Streams

Auf dieser Seite finden Sie eine Übersicht über die Steuerelemente für die Stream-Gleichzeitigkeit, z. B. die maximale Anzahl gleichzeitiger CDC-Aufgaben (Change Data Capture) und Backfill-Aufgaben. Sie können die Streamleistung steuern, indem Sie die Werte dieser Parameter erhöhen oder verringern.

Gleichzeitigkeitserkennung – Übersicht

Mit den Nebenläufigkeitssteuerungen 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 Belastung der Datenbank in Kauf nehmen können, können Sie die Parallelität von CDC- und Backfill-Aufgaben erhöhen. Wenn Ihre Datenbank hingegen stark ausgelastet ist und Sie sie vor einer Überlastung schützen möchten, können Sie die Werte dieser Parameter verringern.

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, damit Datastream mehr CDC-Logdateien gleichzeitig verarbeiten kann.

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 wirkt sich nur aus, wenn mehr Datenbanklogdateien zum Lesen verfügbar sind als CDC-Aufgaben. Die Einstellungen für 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 schließlich 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 für einen Stream parallel ausgeführt werden können. 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.
  • Das Erhöhen der Backfill-Parallelität ist mit einem hohen Risiko verbunden, da Backfill-Aufgaben die Datenbankleistung erheblich beeinträchtigen. Bei jeder Backfill-Aufgabe wird eine ungefilterte SELECT-Abfrage für eine Tabelle ausgeführt. Bei großen Tabellen werden durch solche Abfragen viele Zeilen zurückgegeben.
  • Wenn Sie die Backfill-Concurrency verringern, hat das keine negativen Auswirkungen auf die Quelldatenbank, außer dass der Backfill länger dauert.

Werte von Gleichzeitigkeitsvariablen ändern

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

Nächste Schritte