Datenbank: Google Cloud Spanner führt Backup/Restore ein

Die Funktionen zum Sichern und Wiederherstellen sollen gegen Anwender- und Anwendungsfehler in der verteilten Cloud-Datenbank schützen.

In Pocket speichern vorlesen Druckansicht 3 Kommentare lesen
Datenbank: Google Cloud Spanner führt Backup/Restore ein
Lesezeit: 3 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

Google hat seinen Datenbankdienst Cloud Spanner um eine Backup/Restore-Funktion erweitert. Die Database as a Service (DBaaS) ist zwar auf Zuverlässigkeit und Hochverfügbarkeit ausgerichtet, aber die Neuerung soll Fehler von Anwendern oder durch Anwendungen abfedern. Der Internetriese hat Cloud Spanner zudem um einen lokalen Emulator erweitert, und die C++ Client Library ist nun allgemein verfügbar.

Vom Konzept her ist Google Cloud Spanner auf hohe Verfügbarkeit ausgelegt: Sie skaliert horizontal und soll damit laut den Versprechen zum offiziellen Start des Diensts vor drei Jahren eine Verfügbarkeit von 99,999 Prozent bieten. Zudem setzt sie strikt auf ACID-Transaktionen (Atomicity, Consistency, Isolation und Durability). Ein Open-Source-Projekt, das auf den Grundlagen von Cloud Spanner aufbaut, betont die Langlebigkeit des Konzepts mit ihrem Namen: CockroachDB krabbelt seit Oktober 2019 als Datenbank-"Kakerlake" in der Cloud als Konkurrent zu Googles Angebot.

Die nun eingeführten Backup/Restore-Funktionen dienen dem Schutz vor Operator- und Applikationsfehlern, die zu Datenverlusten führen. Der Dienst verschlüsselt die Backups und hält sie für bis zu einem Jahr nach dem Erstellen bereit. Freilich fallen für die gesicherten Daten zusätzliche Kosten an. Nutzer legen für das Backup ein Haltbarkeitsdatum fest, an dem der Dienst es löscht. Für längere Sicherungskopien empfiehlt Google den Export der Datenbank.

Administratoren legen für jedes Backup ein Verfallsdatum entweder als Zeitspanne oder über ein festes Datum an.

(Bild: Google)

Die Backups befinden sich in derselben Instanz wie die Quelldatenbank, und Cloud Spanner repliziert sie stets gemeinsam mit der eigentlichen Datenbank zu anderen geographischen Standorten. Die Sicherungskopie enthält alle Daten inklusive der Schemata und sekundären Indizes der Originaldatenbank zu der gegebenen create_time.

Das Wiederherstellen funktioniert allerdings nur in eine neue Zieldatenbank, nicht in die ursprüngliche Quelle. Die neue Datenbank muss sich im selben Projekt wie das Backup befinden und für dieselbe geographische Instanz konfiguriert sein. Das Ziel der Wiederherstellung erhält alle ursprünglichen Daten inklusive Schemata, aber die Zugriffsberechtigungen müssen Administratoren separat konfigurieren.

Neben der Backup/Restore-Funktion hat Google Cloud Spanner um einen lokalen Emulator erweitert, der derzeit noch Betastatus hat. Er läuft offline und emuliert die Spanner-API sowohl als REST-Schnittstelle als auch über gRPC sowie den SQL-Zugriff. Entwickler und Administratoren können damit die Funktionen und Daten lokal testen, bevor sie in den Live-Betrieb gehen und dort womöglich unnötige Kosten und Probleme verursachen.

Für den performanten Zugriff auf die Daten in Cloud Spanner steht nun eine C++ Client Library zur Verfügung. Die Bibliothek bietet Session Pool Management und Retry Logic. Weitere Neuerungen wie die Integration von Foreign Keys lassen sich dem Google-Cloud-Blog entnehmen. (rme)