Datenbank vor dem Anwendungsstart aufwärmen

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

Spanner ist eine verteilte Datenbank. Das bedeutet, dass der Schlüsselbereich Ihrer Daten in Splits aufgeteilt wird, wenn die Datenbank wächst. Jeder Split ist ein Bereich an Zeilen, der eine Teilmenge Ihrer Tabelle enthält. Da Spanner Daten anhand von Last und Größe aufteilt, verschiebt es einzelne Splits dynamisch unabhängig voneinander und weist sie verschiedenen Serverressourcen zu, um die Gesamtlast auf der Datenbank auszugleichen.

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

Als Best Practice empfehlen wir, Ihre Anwendung zu starten, wenn sich Spanner in einem warmen Zustand befindet und die Teilungen bereits erstellt und auf die Serverressourcen verteilt wurden. Um Ihre Datenbank aufzuwärmen und sich laden, gehen Sie so vor:

  1. Achten Sie darauf, dass sich die Primärschlüssel, die Sie für die Ladevorgänge der Testdaten generieren, im selben Schlüsselbereich befinden und dieselben Verteilungseigenschaften haben wie die Schlüssel, die Sie für 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.