Aufwärmen der Datenbank vor dem Start der Anwendung

Bevor Sie eine Anwendung starten, sollten Sie Ihre Datenbank mithilfe von Testdatenladevorgängen aufwärmen, um die Parallelisierungsfunktionen von Spanner zu nutzen.

Spanner ist eine verteilte Datenbank. Das bedeutet, dass Spanner den Schlüsselbereich der Daten mit zunehmendem Umfang der Datenbank in sogenannte Splits aufteilt. Jeder Split ist ein Bereich an Zeilen, der eine Teilmenge Ihrer Tabelle enthält. Da Spanner Daten nach Last und Größe aufteilt, werden einzelne Splits dynamisch unabhängig voneinander verschoben und die Splits verschiedenen Serverressourcen zugewiesen, um die Gesamtlast der Datenbank auszugleichen.

Wenn Sie Daten zum ersten Mal in eine leere Datenbank einfügen, schreibt Spanner die Daten in einen einzelnen Split. Die Datenbank befindet sich immer noch im „kalten“ Zustand. Wenn Sie mehr Daten einfügen, beginnt Spanner damit, diese Daten aufzuteilen, um die Last auf andere verfügbare Serverressourcen zu verteilen. Jetzt befindet sich Spanner in einem „warmen“ Zustand mit Splits für verfügbare Serverressourcen, um die Parallelität zu maximieren und die Leistung zu verbessern.

Als Best Practice empfehlen wir, dass Sie Ihre Anwendung starten, wenn sich Spanner im warmen Zustand befindet und bereits Aufteilungen erstellt und auf die Serverressourcen verteilt wurden. So wärmen Sie die Datenbank auf und bereiten die Testdatenladevorgänge vor:

  1. Die Primärschlüssel, die Sie für Ihre Testdatenlasten generieren, müssen sich im selben Schlüsselbereich befinden und dieselben Verteilungsattribute haben wie die Schlüssel, die Sie für den Produktionstraffic verwenden.
  2. Führe einen Lasttest nicht mehr als zwei Tage vor der Einführung durch. Dieser sollte mindestens eine Stunde lang unter der erwarteten Spitzenlast laufen. Durch den Lasttest erstellt Spanner aufgrund des lastbasierten Aufteilungsprinzips mehr Aufteilungen.
  3. Nach Abschluss des Lasttests können Sie die vom Lasttest erstellten Zeilen aus den Tabellen löschen. Löschen Sie jedoch nicht die Tabellen selbst. So bleiben die Aufteilungen für das Startfenster verfügbar.