Freigeben über


Ausgleichen von Shards im Cluster in Azure Cosmos DB for PostgreSQL

Von Bedeutung

Azure Cosmos DB für PostgreSQL wird für neue Projekte nicht mehr unterstützt. Verwenden Sie diesen Dienst nicht für neue Projekte. Verwenden Sie stattdessen einen der folgenden beiden Dienste:

  • Verwenden Sie für hochskalige Szenarien eine verteilte Datenbanklösung mit Azure Cosmos DB für NoSQL, die ein 99,999%iges Verfügbarkeits-Service-Level-Agreement (SLA), eine sofortige Autoskalierung und ein automatisches regionenübergreifendes Failover bietet.

  • Verwenden Sie die Elastic Clusters-Funktion von Azure Database for PostgreSQL für geshartete PostgreSQL-Datenbanken mithilfe der Open-Source-Erweiterung Citus.

Um neu hinzugefügte Knoten nutzen zu können, gleichen Sie die Shards verteilter Tabellen neu aus. Beim Ausgleichen werden Shards von vorhandenen Knoten in die neuen Knoten verschoben. Azure Cosmos DB for PostgreSQL bietet einen Ausgleich ohne Ausfallzeiten, d. h. Abfragen werden während des Ausgleichens von Shards ohne Unterbrechung ausgeführt.

Ermitteln, ob der Cluster ausgeglichen ist

Über das Azure-Portal können Sie anzeigen, ob Daten gleichmäßig auf Workerknoten in einem Cluster verteilt werden. Wählen Sie im Menü Clusterverwaltung die Option Shardausgleich aus.

  • Wenn Daten zwischen Workern verzerrt werden, werden die Meldung Ausgleich wird empfohlen und eine Liste der Größe der einzelnen Knoten angezeigt.

  • Wenn die Daten ausgeglichen sind, wird die Meldung Ausgleich wird zurzeit nicht empfohlen angezeigt.

Ausführen des Shardausgleichs

Stellen Sie zum Starten des Shardausgleichs eine Verbindung mit dem Koordinatorknoten des Clusters her, und führen Sie dann die SQL-Funktion rebalance_table_shards für verteilte Tabellen aus.

Die Funktion gleicht alle Tabellen in der Gruppe Colocation der im Argument genannten Tabelle aus. Sie müssen die Funktion nicht für jede verteilte Tabelle aufrufen. Rufen Sie sie stattdessen aus jeder Colocationsgruppe für eine repräsentative Tabelle auf.

SELECT rebalance_table_shards('distributed_table_name');

Überwachen des Ausgleichsfortschritts

Sie können den Ausgleichsstatus über das Azure-Portal anzeigen. Wählen Sie im Menü Clusterverwaltung die Option Shardausgleich aus. Die Meldung Ausgleich wird ausgeführt wird mit zwei Tabellen angezeigt:

  • Die erste Tabelle zeigt die Anzahl der Shards, die in einen oder aus einem Knoten verschoben werden. Beispiel: „6 von 24 verschoben“
  • Die zweite Tabelle zeigt den Fortschritt pro Datenbanktabelle an: Name, betroffene Shardanzahl, betroffene Datengröße und Ausgleichsstatus.

Wählen Sie zum Aktualisieren der Seite die Option Aktualisieren aus. Wenn der Ausgleich abgeschlossen ist, wird die Meldung Ausgleich wird zurzeit nicht empfohlen angezeigt.

Nächste Schritte