Zusammenfassung

  • Snowflake bewahrt historische Daten permanenter Tabellen nach Time Travel weitere sieben Tage in Fail-safe auf. Diese feste Schutzphase verursacht weiterhin Speicherkosten.
  • Kürzere Aufbewahrung, transient-Tabellen und das Auflösen von Klonverweisen verändern verschiedene Teile der Speicherung. Für die Einsparung zählen die verbleibenden abrechenbaren Bytes.

Wer eine permanente Tabelle bei Snowflake löscht, kann den Arbeitsauftrag abschließen, während der Speicher noch bezahlt wird. Nach Time Travel folgen sieben Tage Fail-safe. Der Anbieter hält die Daten für eine mögliche Wiederherstellung vor, auch wenn die Tabelle aus der täglichen Arbeit verschwunden ist.

Für die Einkaufsabteilung steckt darin eine handfeste Vertragsfrage: Wie lange soll eine Wiederherstellung möglich bleiben, und wer bezahlt den dafür belegten Platz? Ein Bereinigungsprojekt kann viele Namen aus dem Katalog entfernen und trotzdem Daten zurücklassen, deren Aufbewahrung noch läuft.

Snowflakes Erklärung der Speicherkosten umfasst aktive Daten, Time-Travel-Historie, Fail-safe und Daten, auf die Klone weiter verweisen. Tabellen werden komprimiert; für den Speicherumfang zählt die komprimierte Größe. Die Zahl gelöschter Tabellen sagt deshalb weniger über die nächste Rechnung als die verbliebene Datenmenge.

Der Anbieter übernimmt, der Speicher bleibt

Fail-safe beginnt nach Ablauf von Time Travel. Die Dauer von sieben Tagen lässt sich nicht einstellen. Kunden können die Historie dann nicht mehr auf dem üblichen Weg abfragen. Für eine Wiederherstellung müssen sie sich an den Support von Snowflake wenden.

Der Dienst ist für schwere Betriebsstörungen vorgesehen, nachdem andere Wiederherstellungsmöglichkeiten versucht wurden. Snowflake arbeitet dabei nach dem Best-Effort-Prinzip; die Rettung kann Stunden bis Tage dauern. Auch die dafür eingesetzte serverlose Rechenleistung wird berechnet. Die Aufbewahrung und der spätere Rettungsversuch sind zwei kostenpflichtige Vorgänge.

Bei Daten, die sich nur mit erheblichem Aufwand neu erzeugen lassen, kann diese zusätzliche Chance viel wert sein. Ihr Preis entsteht bereits während der störungsfreien Aufbewahrung. Der Kunde bezahlt Platz, damit der Anbieter im Ernstfall noch etwas zum Wiederherstellen hat.

Die Übersicht für historischen Speicher nennt folgende Grundregeln:

Tabellentyp Time Travel Anschließend Fail-safe
Permanent, Standard Edition Null oder ein Tag Sieben Tage
Permanent, Enterprise Edition und höher Null bis 90 Tage Sieben Tage
transient Null oder ein Tag Keine Phase
temporary Null oder ein Tag, bis zum Löschen oder Sitzungsende Keine Phase

Eine permanente Tabelle mit null Tagen Time Travel behält die anschließende Fail-safe-Phase. Eine lange Time-Travel-Abfrage kann den Übergang verzögern, bis sie beendet ist. Hintergrundprozesse führen die Zustandswechsel aus. Der Zeitplan beschreibt die Schutzphasen; vorhandene Referenzen und laufende Verarbeitung beeinflussen den tatsächlichen Abgang der Daten.

Eine kürzere Frist erreicht alte Löschungen nicht immer

Die Time-Travel-Dokumentation zeigt, was bei einer Kürzung von zehn Tagen auf einen Tag geschieht. Der jüngste Tag bleibt in Time Travel. Die Historie der Tage zwei bis zehn wandert in Fail-safe. Der Kunde verkürzt damit seinen direkten Zugriff auf ältere Zustände, während die früheren Daten ihre nächste Schutzphase durchlaufen.

Eine weitere Regel betrifft den Zeitpunkt der Änderung. Erbt eine Tabelle 90 Tage von ihrem Schema und wird danach gelöscht, behält sie diese 90 Tage auch dann, wenn das Schema später auf einen Tag gesetzt wird. Laut Dokumentation muss das gelöschte Objekt zunächst wiederhergestellt werden, bevor seine eigene Frist geändert werden kann.

Die neue Einstellung des Schemas betrifft aktive Objekte. Die bereits erfolgte Löschung läuft mit den vorherigen Bedingungen weiter. Zusätzlich kann eine Mindestfrist des Kontos die wirksame Aufbewahrung verlängern. Für die Kostenplanung braucht eine lokale Null daher den Zusammenhang mit den übergeordneten Regeln.

Damit wirkt eine Entscheidung bei der Anlage des Datensatzes bis in dessen Stilllegung hinein. Wer später Speicher freigeben soll, übernimmt auch die zuvor gewählten Wiederherstellungsbedingungen.

Der Klon hält die Tür offen

Snowflakes Hinweise zum Speicherverhalten beschreiben Zero-Copy-Klone, die zunächst vorhandene Mikropartitionen gemeinsam nutzen. Spätere Änderungen erzeugen eigene Partitionen. Jedes Objekt hat seinen Lebenszyklus; eine Entwicklungskopie kann Daten weiter referenzieren, die die ursprüngliche Tabelle nicht mehr braucht.

Die Referenz zu TABLE_STORAGE_METRICS macht daraus eine nachvollziehbare Kostenposition. Die Sicht unterscheidet aktive Bytes, Time-Travel-Bytes, Fail-safe-Bytes und für Klone zurückgehaltene Bytes. Zur letzten Kategorie gehören auch Daten, die WORM-Backups vorhalten.

Gelöschte Tabellen bleiben sichtbar, solange Speicher für sie berechnet wird. Wird derselbe Name neu angelegt, können mehrere Versionen mit eigener Speicherhistorie auftauchen. Für eine Rechnungserklärung muss man die Objektkennungen und die zugehörigen Bytes verfolgen. Der Name allein kann inzwischen für ein anderes Objekt stehen.

Account Usage kann die Änderung mit bis zu 90 Minuten Verzögerung anzeigen. Eine alte Zeile mit null Bytes in allen vier Hauptkategorien verursacht keine Speicherkosten. Um den verbleibenden Betrag eines Kontos zu berechnen, fehlen dessen komprimierte Restdaten, wirksame Aufbewahrung und anwendbarer Speicherpreis.

Weniger Schutz verlagert die Arbeit

Eine transient-Tabelle hat höchstens einen Tag Time Travel und keine Fail-safe-Phase. Ihr aktiver Speicher bleibt kostenpflichtig, solange sie existiert. Der eine Tag begrenzt die zusätzliche historische Aufbewahrung; eine wochenlang bestehende Tabelle belegt wochenlang aktiven Speicher.

Für reproduzierbare Arbeitsdaten kann das sinnvoll sein. Nach Ablauf ihrer Historie steht jedoch keine Rettung über Fail-safe mehr bereit. Der Kunde übernimmt die Zeit und die Ressourcen für den Neuaufbau. Wenn der Geschäftsbetrieb währenddessen warten muss, gehört auch diese Unterbrechung in die Rechnung. Für schwer rekonstruierbare Daten kann der bezahlte Schutz die günstigere Wahl sein.

temporary-Tabellen hängen zusätzlich an der Sitzung. Ihre Historie endet beim Löschen oder beim Sitzungsende. Das Trennen einer Verbindung beendet die Sitzung für sich genommen nicht. Ein geschlossenes Clientfenster kann daher noch einen offenen Aufräumauftrag hinterlassen.

Snowflake bietet dem Kunden mehrere Möglichkeiten, Dauer und Schutz seiner Daten zu wählen. Die Entscheidung reicht weiter als der Löschbefehl. Eine belastbare Einsparung entsteht, wenn die dafür berechneten Bytes ihre Aufbewahrung tatsächlich beenden.