Dieses Dokument enthält Tipps zur Fehlerbehebung bei Bigtable-Abos.
Abo kann nicht erstellt oder aktualisiert werden
Wenn Sie versuchen, ein Bigtable-Abo zu erstellen oder zu aktualisieren, können die folgenden Fehler auftreten.
Fehler „Berechtigung verweigert“
Wenn die Bigtable-Instanz oder -Tabelle nicht vorhanden ist oder das konfigurierte Dienstkonto keinen Zugriff darauf hat, erhalten Sie eine Fehlermeldung vom Typ „Zugriff verweigert“.
So beheben Sie das Problem:
Prüfen Sie, ob die Instanz und die Tabelle vorhanden sind. Weitere Informationen finden Sie in folgenden Dokumenten:
Wenn sie nicht vorhanden sind, erstellen Sie sie und versuchen Sie noch einmal, das Abo zu erstellen. Ein Beispiel für diesen Schritt finden Sie unter Daten aus Pub/Sub in Bigtable schreiben.
Wenn dieser Fehler weiterhin auftritt, prüfen Sie, ob das Dienstkonto die richtigen Berechtigungen hat. Weitere Informationen finden Sie unter Dienstkonto IAM-Rollen zuweisen.
Fehlende Spaltenfamilien
Wenn die Bigtable-Tabelle nicht die richtigen Spaltenfamilien hat, erhalten Sie einen INCOMPATIBLE_SCHEMA-Fehler.
Dieser Fehler kann folgende Ursachen haben:
- Die Tabelle enthält keine Spaltenfamilie
data. - Metadaten werden geschrieben ist aktiviert und die Tabelle hat keine Spaltenfamilie
pubsub_metadata.
Erstellen Sie die erforderlichen Spaltenfamilien, um das Problem zu beheben. Weitere Informationen finden Sie unter Spaltenfamilien hinzufügen.
Das Abo schreibt keine Daten
Wenn in ein Bigtable-Abo keine Daten geschrieben werden, prüfen Sie den Abostatus mit dem Befehl gcloud beta pubsub subscriptions describe:
gcloud beta pubsub subscriptions describe SUBSCRIPTION_ID
Ersetzen Sie SUBSCRIPTION_ID durch den Namen des Abos.
Das Feld bigtableConfig.state enthält den Status. Wenn das Abo bereit ist, Nachrichten in Bigtable zu schreiben, ist der Status ACTIVE.
Andernfalls liegt ein Fehler in der Konfiguration vor, der verhindert, dass Nachrichten aus dem Abo in die Bigtable-Tabelle geschrieben werden.
Konfigurationsprobleme können folgende Ursachen haben:
Das Anwendungsprofil ist nicht für Single-Cluster-Routing konfiguriert.
Berechtigungsfehler. Weitere Informationen finden Sie unter Fehler „Berechtigung verweigert“.
In der Bigtable-Tabelle fehlt eine erforderliche Spaltenfamilie. Weitere Informationen finden Sie unter Fehlende Spaltenfamilien.
Das Abo kann aufgrund einer Richtlinie zur Nachrichtenspeicherung nicht in die Bigtable-Tabelle schreiben. Dieser Fehler tritt auf, wenn
enforceInTransitaufTruegesetzt ist und sich der Tabellenspeicherort nicht in einer zulässigen Region befindet.
Wenn sich ein Abo in einem Fehlerstatus befindet, werden keine Nachrichten in die Bigtable-Tabelle geschrieben. Die Nachrichten verbleiben im Abo-Backlog und werden nicht an das Thema für unzustellbare Nachrichten gesendet, sofern eines konfiguriert ist. Nicht bestätigte Nachrichten werden für die Aufbewahrungsdauer für Nachrichten des Abos aufbewahrt.
Nachdem das Problem behoben wurde, wird das Abo wieder in einen fehlerfreien Zustand versetzt.
Rückstau erhöhen
Wenn der Abostatus ACTIVE ist, aber der Nachrichtenrückstand im Abo zunimmt oder Nachrichten an das Dead-Letter-Thema des Abos gesendet werden, suchen Sie nach den folgenden Problemen.
Veröffentlichungsrate überschreitet Kapazität
Wenn die Rate, mit der Nachrichten in Ihrem Thema veröffentlicht werden, die Kapazität Ihres Bigtable-Clusters übersteigt, können sich im Abo Backlogs bilden.
Die Nachrichtenreihenfolge führt zu Leistungseinbußen. Die Verwendung von Bigtable-Abos mit Sortierung kann zu einem geringeren Durchsatz oder einer höheren Latenz bei der Nachrichtenzustellung führen. Wenn Sie Leistungsprobleme bei aktivierter Sortierung feststellen, verwenden Sie ausreichend granulare Sortierschlüssel, um übergroße Schlüssel zu vermeiden, oder passen Sie Ihre Anwendung so an, dass keine Sortierung erforderlich ist. Weitere Informationen finden Sie unter Überlegungen zur Verwendung von geordneten Nachrichten.
Behalten Sie die Leistung Ihres Clusters im Blick und erwägen Sie, die Clustergröße zu erhöhen. Weitere Informationen finden Sie in der Bigtable-Dokumentation unter den folgenden Themen:
Regionsübergreifender Traffic
Wenn Ihre Anwendung Nachrichten in einer anderen Region als der Bigtable-Cluster in Ihrem Thema veröffentlicht, dauert es länger, bis jede Nachricht veröffentlicht wird, als wenn die Veröffentlichung in derselben Region erfolgt. Durch die längere Veröffentlichungszeit wird die Rate reduziert, mit der Ihr Abo Nachrichten in Bigtable schreibt, wodurch der Gesamtdurchsatz sinkt.
Damit Nachrichten möglichst schnell veröffentlicht werden, sollten Sie sie in derselben Region wie Ihren Bigtable-Cluster veröffentlichen.
Nächste Schritte
- Wenn weiterhin Probleme mit Ihrem Bigtable-Abo auftreten, lesen Sie den Abschnitt Support erhalten.