Backfill für die Objekte eines Streams verwalten

Übersicht

Ein Stream in Datastream kann einen Backfill für Verlaufsdaten durchführen und laufende Änderungen an ein Ziel streamen. Beim Erstellen eines Streams haben Sie Informationen zur Quelldatenbank für den Stream konfiguriert.

Wenn Sie das Kästchen Backfill für Verlaufsdaten anklicken, streamt Datastream alle vorhandenen Daten sowie Änderungen an den Daten von der Quelle in das Ziel.

Wenn Sie dieses Kästchen nicht ausgewählt haben, streamt Datastream nur Änderungen an den Daten. Damit Datastream einen Snapshot aller vorhandenen Daten von der Quelle zum Ziel streamt, müssen Sie für die Objekte, die diese Daten enthalten, einen Backfill initiieren. Die Objekte liegen in Form von Datenbankschemas, Tabellen und Spalten vor.

Ein weiterer Grund für die Initiierung des Backfills für ein Objekt ist, wenn die Daten zwischen der Quelle und dem Ziel nicht synchron sind. Beispielsweise kann ein Nutzer versehentlich Daten im Ziel löschen und die Daten gehen nun verloren. In diesem Fall dient das Initiieren des Backfills für das Objekt als "Rücksetzungsmechanismus", da alle Daten auf einmal an das Ziel gestreamt werden. Deshalb werden die Daten zwischen der Quelle und dem Ziel synchronisiert.

Nachdem Sie den Backfill für ein Objekt initiiert haben, können Sie den Backfill beenden. Im obigen Beispiel ändert der Nutzer das Datenbankschema und das Schema oder die Daten sind beschädigt. Da dieses Schema oder die Daten nicht an das Ziel gestreamt werden sollen, beenden Sie den Backfill für das Objekt.

Sie können den Backfill für Objekte auch zum Zweck des Load-Balancings beenden. Datastream kann mehrere Backfills parallel ausführen. Dies kann eine zusätzliche Last für die Quelle bedeuten. Wenn die Last erheblich ist, beenden Sie den Backfill für die Objekte und initiieren Sie dann den Backfill für sie einzeln.

Objektstatus

Im Lebenszyklus des Initiierens und Beendens des Backfills für ein Objekt sind folgende Status möglich:

  • Kein Status (in der UI als - dargestellt): Gründe dafür, dass ein Objekt diesen Status erhält:
    • Der Stream wurde noch nicht gestartet.
    • Das Kästchen Backfill für Verlaufsdaten ist nicht aktiviert, sodass der Backfill als manuell definiert ist.
    • Das Objekt ist explizit von automatisch Backfills ausgeschlossen.
    • Der Stream ist so konfiguriert, dass zukünftige Tabellen enthalten sind. Wenn dies der Fall ist und keine neuen Tabellen zur Quelle hinzugefügt werden, wird keine automatische Backfill-Aufgabe für sie erstellt, da neue Tabellen in der Regel keine "Verlaufsdaten" für den Backfill haben.

      Weitere Informationen finden Sie unter Informationen zur Quelldatenbank für den Stream konfigurieren.

  • Pending: Backfill wurde für das Objekt noch nicht gestartet.
  • Active: Backfill wird für das Objekt ausgeführt.
  • Completed: Backfill ist für das Objekt abgeschlossen.
  • Stopped: Backfill für das Objekt wurde gestoppt. Wird der Backfill für das Objekt noch einmal initiiert, streamt Datastream alle mit dem Objekt verknüpften Daten von der Quelle in das Ziel.
  • Failed: Backfill ist für das Objekt fehlgeschlagen und der Backfill muss noch einmal initiiert werden.

Backfill initiieren

  1. Rufen Sie in der Google Cloud Console die Seite Streams auf.

    Zur Seite "Streams"

  2. Klicken Sie auf den Stream mit den Objekten, für die Sie einen Backfill initiieren möchten.

  3. Klicken Sie auf den Tab OBJEKTE.

  4. Klicken Sie auf das Kästchen für jedes Objekt, für das Sie den Backfill initiieren möchten.

  5. Klicken Sie auf BACKFILL INITIIEREN.

  6. Wenn Sie nur ein Objekt ausgewählt haben, klicken Sie im Dialogfeld auf OBJEKT-BACKFILL INITIIEREN. Wenn Sie mehrere Objekte ausgewählt haben, klicken Sie auf OBJEKT-BACKFILLS INITIIEREN.

    Datastream beginnt den Backfill für die ausgewählten Objekte. Der Status jedes Objekts ändert sich dann von Pending in Active in Completed. Wenn ein Objekt den Status Completed hat, wurde der Backfill für das Objekt abgeschlossen.

Backfill beenden

  1. Rufen Sie in der Google Cloud Console die Seite Streams auf.

    Zur Seite "Streams"

  2. Klicken Sie auf den Stream mit den Objekten, für die Sie den Backfill beenden möchten.

  3. Klicken Sie auf den Tab OBJEKTE.

  4. Klicken Sie auf das Kästchen für jedes Objekt, für das Sie den Backfill beenden möchten.

  5. Klicken Sie auf BACKFILL BEENDEN.

  6. Wenn Sie nur ein Objekt ausgewählt haben, klicken Sie im Dialogfeld auf OBJEKT-BACKFILL BEENDEN. Andernfalls, wenn Sie mehrere Objekte ausgewählt haben, klicken Sie auf OBJEKT-BACKFILLs BEENDEN.

    Datastream beendet den Backfill für die ausgewählten Objekte und der Status jedes Objekts ändert sich in Stopped.

    Wenn ein Objekt diesen Status hat, wird der Backfill für das Objekt gestoppt. Wird der Backfill für das Objekt noch einmal initiiert, streamt Datastream alle mit dem Objekt verknüpften Daten von der Quelle in das Ziel.