- Schema:
Ansicht TABLE_STORAGE_METRICS¶
In dieser Ansicht zur Kontonutzung werden Informationen zur Speicherauslastung auf der Tabellenebene angezeigt. Diese Informationen werden zur Berechnung der Speicherabrechnung für die einzelnen Tabellen im Konto verwendet, einschließlich jener Tabellen, die gelöscht wurden, aber noch Speicherkosten verursachen.
Zusätzlich zu den Tabellenmetadaten wird in der Ansicht die Anzahl der für einzelne Tabellen abgerechneten Speicherbytes angezeigt. Snowflake schlüsselt die Bytes in die folgenden Kategorien auf:
Aktive Bytes, die Daten in der Tabelle darstellen, die abgefragt werden können.
Gelöschte Bytes, die noch Speicherkosten verursachen, da sie noch nicht aus dem System gelöscht wurden. Diese Bytes werden in folgende Unterkategorien eingeteilt:
Bytes in Time Travel (d. h. kürzlich gelöscht, aber noch innerhalb der Time Travel-Aufbewahrungsfrist für die Tabelle).
Bytes in Fail-safe (d. h. gelöschte Bytes, die über die Aufbewahrungsfrist von Time Travel hinausgehen, aber innerhalb der Frist von Fail-safe für die Tabelle liegen).
Bytes, die für Klone aufbewahrt werden (d. h. gelöschte Bytes, die sich nicht mehr in Time Travel oder Fail-safe befinden, aber trotzdem erhalten bleiben, da Klone der Tabelle auf die Bytes verweisen).
Das heißt, Zeilen werden in dieser Ansicht so lange gepflegt, bis die entsprechenden Tabellen für keinen Speicher mehr abgerechnet werden, unabhängig von verschiedenen Zuständen, in denen sich die Daten in den Tabellen befinden können (d. h. aktiv, Time Travel, Fail-safe oder für Klone aufbewahrt).
Weitere Informationen zur Datenspeicherung in Tabellen finden Sie unter Hinweise zur Datenspeicherung.
Spalten¶
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
ID |
NUMBER |
Interner/systemgenerierter Bezeichner für die Tabelle. |
TABLE_NAME |
TEXT |
Name der Tabelle. |
TABLE_SCHEMA_ID |
NUMBER |
Interner/systemgenerierter Bezeichner für das Schema der Tabelle. |
TABLE_SCHEMA |
TEXT |
Schema, zu dem die Tabelle gehört. |
TABLE_CATALOG_ID |
NUMBER |
Interner/systemgenerierter Bezeichner für die Datenbank der Tabelle. |
TABLE_CATALOG |
TEXT |
Datenbank, zu der die Tabelle gehört. |
CLONE_GROUP_ID |
NUMBER |
Eindeutiger Bezeichner für den ältesten Klonvorfahren dieser Tabelle. Gleich der ID, wenn die Tabelle kein Klon ist. |
IS_TRANSIENT |
TEXT |
‚YES‘, wenn die Tabelle transient oder temporär ist, ansonsten ‚NO‘. Transiente und temporäre Tabellen haben keine Fail-safe-Frist. |
ACTIVE_BYTES |
NUMBER |
Bytes, die dieser Tabelle gehören (und ihr in Rechnung gestellt werden) und sich für die Tabelle im aktiven Zustand befinden. |
TIME_TRAVEL_BYTES |
NUMBER |
Bytes, die dieser Tabelle gehören (und ihr in Rechnung gestellt werden) und sich für die Tabelle im Zustand Time Travel befinden. |
FAILSAFE_BYTES |
NUMBER |
Bytes, die sich im Besitz dieser Tabelle befinden (und ihr in Rechnung gestellt werden) und sich für die Tabelle im Fail-safe-Status befinden. |
RETAINED_FOR_CLONE_BYTES |
NUMBER |
Bytes, die dieser Tabelle gehören (und ihr in Rechnung gestellt werden) und die nach dem Löschen erhalten bleiben, weil ein oder mehrere Klone dieser Tabelle auf sie verweisen. |
DELETED |
BOOLEAN |
TRUE, wenn die Tabelle aus dem Speicher bereinigt wurde. |
TABLE_CREATED |
TIMESTAMP_LTZ |
Datum und Uhrzeit der Erstellung der Tabelle. |
TABLE_DROPPED |
TIMESTAMP_LTZ |
Datum und Zeit der Löschung der Tabelle. NULL, wenn die Tabelle nicht gelöscht wurde. |
TABLE_ENTERED_FAILSAFE |
TIMESTAMP_LTZ |
Datum und Uhrzeit, zu denen die Tabelle (falls gelöscht) in den Fail-safe-Status oder NULL übergegangen ist. In diesem Zustand kann die Tabelle mit UNDROP nicht wiederhergestellt werden. |
SCHEMA_CREATED |
TIMESTAMP_LTZ |
Datum und Uhrzeit, zu denen das Schema für die Tabelle erstellt wurde. |
SCHEMA_DROPPED |
TIMESTAMP_LTZ |
Datum und Uhrzeit, zu denen das Schema für die Tabelle gelöscht wurde. |
CATALOG_CREATED |
TIMESTAMP_LTZ |
Datum und Uhrzeit, zu denen die Datenbank für die Tabelle erstellt wurde. |
CATALOG_DROPPED |
TIMESTAMP_LTZ |
Datum und Uhrzeit, zu denen die Datenbank für die Tabelle gelöscht wurde. |
COMMENT |
TEXT |
Kommentar zur Tabelle. |
INSTANCE_ID |
NUMBER |
Interner/systemgenerierter Bezeichner für die Instanz, zu der das Objekt gehört. |
Nutzungshinweise¶
Die Latenz der Ansicht kann bis zu 90 Minuten betragen.
ID
undCLONE_GROUP_ID
:ID
ändert sich bei einer Tabelle während ihres gesamten Lebenszyklus nicht, auch wenn die Tabelle umbenannt oder gelöscht wird.CLONE_GROUP_ID
ist die ID des ältesten Vorgängers eines Klons, auch wenn die Tabelle gelöscht wurde, aber immer noch Speicherkosten anfallen. Beispiel:Tabelle
t2
wird aust1
geklont.Tabelle
t3
wird aust2
geklont.
In allen drei Tabellen wird die
ID
fürt1
als ihreCLONE_GROUP_ID
angezeigt, auch wennt1
gelöscht und schließlich von Snowflake bereinigt wurde.Wenn die IDs identisch sind, ist die Tabelle kein Klon.
Speicherbytes sind immer im Besitz der Tabelle, in der die Bytes ursprünglich hinzugefügt wurden, und werden der Tabelle daher in Rechnung gestellt. Wenn die Tabelle dann geklont wird, werden die Speichermetriken für diese anfänglichen Bytes niemals an die Klone übertragen, auch wenn die Bytes aus der Quelltabelle gelöscht werden.
Geklonte Tabellen teilen sich den gleichen zugrunde liegenden Speicher (auf der Mikropartitionsebene), bis entweder die ursprüngliche Tabelle oder die geklonte Tabelle geändert wird. Mit jeder Änderung an einer der beiden Tabellen übernimmt die Tabelle den „Besitz“ der geänderten Bytes.
Gelöschte Tabellen werden in der Ansicht angezeigt, solange durch sie noch Speicherkosten entstehen:
Gelöschte Tabellen behalten ihre aktiven Speichermetriken bei, die angeben, wie viele Bytes aktiv sein werden, wenn die Tabelle wiederhergestellt wird.
Gelöschte Tabellen in der Time Travel-Aufbewahrungsfrist für die Tabelle können mit dem Befehl UNDROP wiederhergestellt werden.
Bei gelöschten Tabellen in Fail-safe (
TABLE_ENTERED_FAILSAFE
ist nichtNULL
) werden möglicherweise in den meisten SpaltenNULL
-Werte angezeigt, mit Ausnahme von:- ID-Spalten:
ID
,CLONE_GROUP_ID
- Byte-Spalten:
ACTIVE_BYTES
,TIME_TRAVEL_BYTES
,FAILSAFE_BYTES
,RETAINED_FOR_CLONE_BYTES
Diese Tabellen können nicht mit dem Befehl UNDROP wiederhergestellt werden.
Wenn Daten aus einer Tabelle mit einer Time Travel-Aufbewahrungsfrist von 0 Tagen gelöscht werden, bereinigen asynchrone Hintergrundprozesse die aktiven Bytes oder verschieben sie direkt in den Fail-safe-Speicher, je nach Tabellentyp. Diese Ausführung kann etwas Zeit in Anspruch nehmen. Während dieser Zeit kann die Spalte
TIME_TRAVEL_BYTES
einen Wert ungleich Null enthalten, auch wenn die Time Travel-Aufbewahrungsfrist 0 Tage beträgt.FAILSAFE_BYTES
kennzeichnet Bytes, deren Time Travel-Zeit verstrichen ist. Alle diese Bytes werden für die aktuelle Tabelle abgerechnet.Wenn mehrere Zeilen in der Spalte
TABLE_NAME
den gleichen Wert haben, bedeutet das, dass mehrere Versionen der Tabelle existieren. Eine Version wird jedes Mal erstellt, wenn eine Tabelle gelöscht und eine neue Tabelle mit dem gleichen Namen erstellt wird. Dies gilt auch, wenn für eine vorhandene Tabelle ein CREATE OR REPLACE TABLE-Befehl ausgeführt wird. Beachten Sie, dass in der aktuellen Version die SpalteTABLE_DROPPED
einenNULL
-Wert hat. Alle anderen Versionen haben einen Zeitstempelwert. Dies sollte beachtet werden, da jede Version einer Tabelle Speicherkosten im Zusammenhang mit Time Travel verursacht (und auch für Fail-safe, wenn die Tabelle permanent ist).Alle Daten in der Spalte
DELETED
vor August 2018 sind möglicherweise nicht genau.In einigen Fällen können die aktiven Bytes auch Bytes für Daten in einer gelöschten Spalte enthalten. Weitere Informationen dazu finden Sie in den Nutzungshinweisen für ALTER TABLE.