Instanzen, Cluster und Knoten

Zur Verwendung von Cloud Bigtable erstellen Sie Instanzen mit bis zu vier Clustern, zu denen Ihre Anwendungen eine Verbindung herstellen können. Jeder Cluster enthält Knoten, also Recheneinheiten, die Ihre Daten verwalten und Wartungsaufgaben ausführen.

Diese Seite enthält weitere Informationen zu Cloud Bigtable-Instanzen, -Clustern und -Knoten.

Bevor Sie diese Seite lesen, sollten Sie sich mit den Informationen unter Übersicht über Cloud Bigtable vertraut gemacht haben.

Instanzen

Eine Cloud Bigtable-Instanz ist ein Container für Ihre Daten. Instanzen haben einen oder mehrere Cluster, die sich in verschiedenen Zonen befinden. Jeder Cluster hat mindestens einen Knoten.

Eine Tabelle gehört nicht zu einem Cluster oder Knoten, sondern zu einer Instanz. Wenn Sie eine Instanz mit mehr als einem Cluster haben, verwenden Sie die Replikation. Das bedeutet, dass Sie einem einzelnen Cluster keine Tabelle zuweisen oder eindeutige Richtlinien für die automatische Speicherbereinigung für jeden Cluster in einer Instanz erstellen können. Sie können außerdem nicht festlegen, dass jeder Cluster einen anderen Datensatz in derselben Tabelle speichert.

Eine Instanz hat einige wichtige Eigenschaften, die Sie kennen sollten:

  • Speichertyp (SSD oder HDD)
  • Die Anwendungsprofile, die hauptsächlich für Instanzen mit Replikation verwendet werden

In den folgenden Abschnitten werden diese Eigenschaften beschrieben.

Speichertypen

Wenn Sie eine Instanz erstellen, müssen Sie auswählen, ob die Cluster der Instanz Daten auf SSD oder Festplattenlaufwerken speichern. SSD ist oft, aber nicht immer, die effizienteste und kostengünstigste Wahl.

Die Wahl zwischen SSD und HDD ist unumkehrbar und jeder Cluster in Ihrer Instanz muss denselben Speichertyp verwenden. Aus diesem Grund sollten Sie sich bei der Wahl des richtigen Speichertyps für Ihren Anwendungsfall sicher sein. Weitere Informationen, die Ihnen bei dieser Entscheidung helfen können, finden Sie unter Zwischen SSD- und HDD-Speicher wählen.

Anwendungsprofile

Nachdem Sie eine Instanz erstellt haben, verwendet Cloud Bigtable die Instanz, um Anwendungsprofile zu speichern. Bei Instanzen mit Replikation steuern Anwendungsprofile, wie Ihre Anwendungen Verbindungen zu den Clustern der Instanz herstellen.

Auch bei Instanzen ohne Replikation können Sie Anwendungsprofile verwenden, um separate Kennzeichnungen für jede Anwendung oder jede Funktion in einer Anwendung anzugeben. Sie haben dann die Möglichkeit, eigene Diagramme für jedes Anwendungsprofil in der Cloud Console aufzurufen.

Weitere Informationen zu Anwendungsprofilen finden Sie unter Anwendungsprofile. Unter Anwendungsprofile konfigurieren wird beschrieben, wie Anwendungsprofile einer Instanz eingerichtet werden.

Cluster

Ein Cluster stellt den Cloud Bigtable-Dienst an einem bestimmten Standort dar. Jeder Cluster gehört zu genau einer Cloud Bigtable-Instanz und eine Instanz kann bis zu vier Cluster umfassen. Wenn Ihre Anwendung Anfragen an eine Cloud Bigtable-Instanz sendet, werden diese Anfragen von einem der Cluster in der Instanz verarbeitet.

Jeder Cluster befindet sich in genau einer Zone. Die Cluster einer Instanz müssen jeweils in einer eindeutigen Zone angesiedelt sein. Sie können einen zusätzlichen Cluster in jeder Zone erstellen, in der Cloud Bigtable verfügbar ist. Wenn sich beispielsweise der erste Cluster in us-east1-b befindet, können Sie eine andere Zone in der Region, wie us-east1-c, oder eine Zone in einem separaten Bereich, wie europe-west2-a, auswählen. Eine Liste der Zonen und Regionen, in denen Cloud Bigtable verfügbar ist, finden Sie unter Cloud Bigtable-Standorte.

Cloud Bigtable-Instanzen mit nur einem Cluster führen keine Replikation aus. Wenn Sie eine Instanz um einen zweiten Cluster erweitern, beginnt Cloud Bigtable automatisch mit der Replikation Ihrer Daten. Dazu werden in jeder Zone des Clusters separate Datenkopien gespeichert und Updates zwischen den Kopien synchronisiert. Sie können entscheiden, zu welchem Cluster Ihre Anwendungen eine Verbindung herstellen. Dadurch lassen sich verschiedene Arten von Traffic voneinander isolieren. Sie können Cloud Bigtable auch den Traffic zwischen Clustern ausgleichen lassen. Wenn ein Cluster nicht mehr verfügbar ist, kann ein Failover von einem Cluster auf einen anderen erfolgen. Weitere Informationen zur Funktionsweise der Replikation finden Sie unter Replikation – Übersicht.

Knoten

Jeder Cluster in einer Instanz hat einen oder mehrere Knoten. Das sind Rechenressourcen, die Cloud Bigtable zur Verwaltung Ihrer Daten verwendet.

Im Hintergrund teilt Cloud Bigtable alle Daten in einer Tabelle in separate Tabellenreihen auf. Tabellenreihen werden getrennt von den Knoten auf dem Laufwerk gespeichert, jedoch in derselben Zone, in der sich die Knoten befinden. Eine Tabellenreihe ist einem einzelnen Knoten zugeordnet.

Jeder Knoten ist für Folgendes verantwortlich:

  • Nachverfolgen bestimmter Tabellenreihen auf dem Laufwerk
  • Verarbeitung eingehender Lese- und Schreibvorgänge für die ihm zugeordneten Tabellenreihen
  • Pflegen der ihm zugeordneten Tabellenreihen, z. B. durch regelmäßige Kompaktionen.

Ein Cluster muss genug Knoten haben, um seine aktuelle Arbeitslast und die Menge der gespeicherten Daten bewältigen zu können. Ansonsten ist der Cluster unter Umständen nicht in der Lage, eingehende Anfragen zu verarbeiten, was eine erhöhte Latenz zur Folge haben kann. Halten Sie die CPU- und Laufwerkauslastung Ihrer Cluster im Auge und erweitern Sie eine Instanz um Knoten, wenn deren Messwerte die unten aufgeführten Empfehlungen und Grenzwerte überschreiten.

Weitere Informationen dazu, wie Daten durch Cloud Bigtable gespeichert und verwaltet werden, finden Sie unter Architektur von Cloud Bigtable.

CPU-Nutzung

Cloud Bigtable meldet folgende Messwerte zur CPU-Nutzung:

Messwert Beschreibung
Durchschnittliche CPU-Auslastung

Die durchschnittliche CPU-Auslastung aller Knoten im Cluster.

Die empfohlenen Maximalwerte bieten Spielraum für kurze Nutzungsspitzen.

Wenn ein Cluster den Höchstwert länger als ein paar Minuten überschreitet, sollten Sie dem Cluster Knoten hinzufügen.

CPU-Auslastung des am stärksten genutzten Knotens

Die CPU-Auslastung des aktivsten Knotens im Cluster.

Wenn der am stärksten genutzte Knoten auch bei vertretbarer durchschnittlicher CPU-Auslastung häufig über dem empfohlenen Wert liegt, kann das darauf hindeuten, dass auf einen kleinen Teil Ihrer Daten sehr viel häufiger zugegriffen wird als auf den Rest.

  • Mit dem Key Visualizer-Tool können Sie Hotspots in Ihrer Tabelle finden, die zu Spitzen in der CPU-Auslastung führen können.
  • Überprüfen Sie, ob Ihr Schemadesign eine gleichmäßige Verteilung von Lese- und Schreibzugriffen innerhalb der einzelnen Tabellen ermöglicht.

Je nach Konfiguration sollten dabei folgende Werte nicht überschritten werden:

Konfiguration Empfohlene Maximalwerte
Einzelner Cluster

70 % durchschnittliche CPU-Auslastung
90 % CPU-Auslastung des am stärksten genutzten Knotens

Beliebig viele Cluster mit Single-Cluster-Routing

70 % durchschnittliche CPU-Auslastung
90 % CPU-Auslastung des am stärksten genutzten Knotens

2 Cluster mit Multi-Cluster-Routing

35 % durchschnittliche CPU-Auslastung
45 % CPU-Auslastung des am stärksten genutzten Knotens

3 oder mehr Cluster mit Multi-Cluster-Routing

Abhängig von der Konfiguration. Allgemeine Anwendungsfälle finden Sie unter Beispiele für Replikationseinstellungen.

Laufwerknutzung

Cloud Bigtable meldet folgende Messwerte zur Laufwerksnutzung:

Messwert Beschreibung
Speicherauslastung (Byte)

Die Menge der im Cluster gespeicherten Daten.

Dieser Wert wirkt sich auf Ihre Kosten aus. Außerdem müssen Sie möglicherweise wie unten beschrieben jedem Cluster Knoten hinzufügen, wenn sich die Datenmenge erhöht.

Speicherauslastung (Max. %)

Der Prozentsatz der verwendeten Speicherkapazität des Clusters. Die Kapazität hängt von der Anzahl der Knoten im Cluster ab.

Im Allgemeinen sollten Sie nicht mehr als 70 % des harten Grenzwerts für die Gesamtkapazität nutzen, damit Sie Platz für weitere Daten haben. Wenn Sie Ihrer Instanz keine großen Datenmengen hinzufügen möchten, können Sie bis zu 100 % des harten Grenzwerts ausnutzen.

Wenn Sie mehr als den empfohlenen Prozentsatz des Speicherlimits verwenden, fügen Sie dem Cluster Knoten hinzu. Sie können auch vorhandene Daten löschen. Allerdings belegen gelöschte Daten erst einmal mehr Speicherplatz und erst nach einer Verdichtung weniger.

Ausführliche Informationen zur Berechnung dieses Werts finden Sie unter Speicherplatz pro Knoten.

Laufwerksauslastung

Der Prozentsatz der maximal möglichen Bandbreite für HDD-Lese- und -Schreibzugriffe, den der Cluster belegt. Nur für HDD-Cluster verfügbar.

Wenn dieser Wert häufig bei 100 % liegt, könnte es zu erhöhter Latenz kommen. Fügen Sie dem Cluster in diesem Fall Knoten hinzu, um den Prozentsatz der Laufwerksauslastung zu reduzieren.

Knoten für replizierte Cluster

Achten Sie bei einer Instanz mit Replikation darauf, dass jeder Cluster genug Knoten für den jeweiligen Anwendungsfall hat:

  • Wenn Sie mithilfe der Replikation eine hohe Verfügbarkeit bereitstellen oder Multi-Cluster-Routing in einem Ihrer Anwendungsprofile verwenden, sollte jeder Cluster die gleiche Anzahl an Knoten haben. Außerdem halbiert sich dadurch die empfohlene CPU-Auslastung, wie schon oben unter CPU-Nutzung erwähnt.

    Diese Konfiguration gewährleistet bei einem erforderlichen automatischen Failover, dass dem responsiven Cluster genug Kapazität zur Bewältigung des gesamten Traffics zur Verfügung steht.

  • Wenn in allen Anwendungsprofilen Single-Cluster-Routing verwendet wird, kann jeder Cluster eine andere Anzahl von Knoten haben. Passen Sie die Größe jedes Clusters nach Bedarf auf Basis seiner Arbeitslast an.

    Da Cloud Bigtable eine separate Kopie Ihrer Daten für jeden Cluster speichert, muss jeder Cluster immer genug Knoten haben, um Ihre Laufwerksnutzung zu unterstützen und Schreibvorgänge über die Cluster hinweg zu replizieren.

    Sie können bei Bedarf immer ein manuelles Failover von einem Cluster auf einen anderen anstoßen. Wenn allerdings ein Cluster sehr viel mehr Knoten als ein anderer hat und ein Failover auf den Cluster mit der geringeren Knotenanzahl erforderlich ist, müssen Sie unter Umständen zuerst Knoten hinzufügen. Es kann nicht garantiert werden, dass bei einem erforderlichen Failover ausreichend zusätzliche Knoten verfügbar sind. Die einzige Möglichkeit zur Vorabreservierung von Knoten besteht darin, den Cluster um Knoten zu erweitern.

Weitere Informationen