Bigtable-Abos

Mit Bigtable-Abos können Sie Pub/Sub-Nachrichten in eine Bigtable-Tabelle schreiben. Dieses Dokument bietet einen Überblick über Bigtable-Abos, einschließlich des Abo-Workflows, der Semantik der Zustellung und der Fehlerbehandlung.

Informationen zum Erstellen eines Bigtable-Abos finden Sie unter Bigtable-Abo erstellen.

Übersicht

Ein Bigtable-Abo ist eine Art von Exportabo, mit dem Nachrichten beim Empfang in eine vorhandene Bigtable-Tabelle geschrieben werden. Wenn Sie ein Exportabo verwenden, müssen Sie keinen separaten Abonnentenclient konfigurieren.

Wenn Sie Nachrichten in Bigtable schreiben möchten und die Nachrichten keine zusätzliche Verarbeitung benötigen oder die Verarbeitung von einer Single Message Transform (SMT) ausgeführt werden kann, sollten Sie ein Bigtable-Abo verwenden.

Wenn Sie komplexere Transformationen ausführen müssen, bevor Sie Nachrichten in Bigtable schreiben, empfehlen wir, eine Dataflow-Pipeline mit einem Pull-Abo zu verwenden. Weitere Informationen finden Sie unter Aus Pub/Sub in Dataflow lesen.

Weitere Informationen zur Auswahl eines Pub/Sub-Abotyps finden Sie unter Abotyp auswählen.

Bigtable-Abo-Workflow

Das folgende Bild zeigt den Workflow zwischen einem Bigtable-Abo und Bigtable.

Bei einem Bigtable-Abo werden Daten in eine Bigtable-Tabelle geschrieben.

Der Workflow besteht aus den folgenden Schritten:

  1. Ein Publisher sendet eine Nachricht an ein Pub/Sub-Thema.

  2. Pub/Sub leitet die Nachricht an das Bigtable-Abo weiter.

  3. Das Abo sendet eine Schreibanfrage an Bigtable. Im Schreibvorgang wird ein Abo für ein Anwendungsprofil angegeben, das Single-Cluster-Routing verwendet.

  4. Bigtable leitet die Nachricht an den Bigtable-Cluster weiter, der die Tabelle enthält.

  5. Die Schreibanfrage wird für die Tabelle übernommen.

  6. Nach erfolgreichem Abschluss eines Schreibvorgangs gibt die Bigtable API eine Erfolgsantwort zurück.

Wenn ein Schreibvorgang fehlschlägt, wird er so behandelt:

  1. Die Pub/Sub-Nachricht wird negativ bestätigt.

  2. Pub/Sub sendet die Nachricht noch einmal.

  3. Wenn die Zustellung der Nachricht oft genug fehlschlägt und ein Thema für unzustellbare Nachrichten für das Abo konfiguriert ist, wird die Nachricht in das Thema für unzustellbare Nachrichten verschoben.

Semantik der Auslieferung

Bigtable-Abos unterstützen die mindestens einmalige Übermittlung. Wenn Sie eine genaue Deduplizierung von Nachrichten benötigen, sollten Sie Downstream-Prozesse implementieren, um potenzielle Duplikate in Bigtable zu verarbeiten, oder die „Genau einmal“-Verarbeitungsfunktionen von Dataflow verwenden.

Umgang mit Nachrichtenfehlern

Wenn eine Pub/Sub-Nachricht nicht in Bigtable geschrieben werden kann, kann sie nicht bestätigt werden. Wenn Sie solche unzustellbaren Nachrichten weiterleiten möchten, konfigurieren Sie ein Thema für unzustellbare Nachrichten für das Bigtable-Abo. Die Pub/Sub-Nachricht, die an das Thema für unzustellbare Nachrichten weitergeleitet wird, enthält ein Attribut mit dem Namen CloudPubSubDeadLetterSourceDeliveryErrorMessage, das den Grund für den Schreibfehler enthält.

Wenn Pub/Sub keine Nachrichten in Bigtable schreiben kann, wird die Zustellung von Nachrichten ähnlich wie beim Push-Backoff verzögert.

Kontingente und Limits

Für Pub/Sub gelten Kontingentbeschränkungen für den Bigtable-Abonnentendurchsatz pro Region. Weitere Informationen finden Sie unter Pub/Sub-Kontingente und ‑Limits.

Informationen zu Bigtable-Limits finden Sie in der Bigtable-Dokumentation unter Kontingente und Limits.

Preise

Informationen zu den Preisen für Bigtable-Abos finden Sie auf der Seite Pub/Sub-Preise.

Nächste Schritte