Vue TABLE_STORAGE_METRICS¶
Cette vue affiche des informations sur l’utilisation du stockage au niveau de la table, qui sont utilisées pour calculer la facturation du stockage pour chaque table du compte, y compris les tables qui ont été détruites, mais qui continuent à créer des coûts de stockage.
En plus des métadonnées de la table, la vue affiche le nombre d’octets de stockage facturés pour chaque table. Snowflake décompose les octets dans les catégories suivantes :
Octets actifs, représentant les données de la table qui peuvent être interrogées.
Les octets supprimés qui créent encore des frais de stockage parce qu’ils n’ont pas encore été purgés du système. Ces octets sont classés dans les sous-catégories suivantes :
octets dans Time Travel (c.-à-d. récemment supprimés, mais encore comprises dans la période de conservation Time Travel de la table).
octets dans Fail-safe (c’est-à-dire les octets supprimés qui ont dépassé la période de conservation de Time Travel, mais sont encore compris dans la période Fail-safe de la table).
octets conservés pour les clones (c’est-à-dire les octets supprimés qui ne sont plus dans Time Travel ou Fail-safe, mais qui sont conservés car les clones de la table font référence aux octets).
En d’autres termes, les lignes sont conservées dans cette vue jusqu’à ce que les tables correspondantes ne soient plus facturées pour aucun stockage, quel que soit le statut dans lequel se trouvent les données des tables (c’est-à-dire octets actifs, Time Travel, Fail-safe ou conservés pour les clones).
Pour plus de détails sur le stockage des données dans les tables, voir Remarques relatives au stockage de données.
Note
Pour interroger cette vue, vous devez utiliser le rôle ACCOUNTADMIN. La vue est visible pour les autres vues et peut être interrogée, mais les requêtes ne retourneront aucune ligne.
Colonnes¶
Nom de la colonne |
Type de données |
Description |
---|---|---|
TABLE_CATALOG |
TEXT |
Base de données à laquelle la table appartient. |
TABLE_SCHEMA |
TEXT |
Schéma auquel la table appartient. |
TABLE_NAME |
TEXT |
Nom de la table. |
ID |
NUMBER |
Identificateur unique de la table. |
CLONE_GROUP_ID |
NUMBER |
Identificateur unique pour le plus ancien ancêtre clone de cette table. Identique à ID si la table n’est pas un clone. |
IS_TRANSIENT |
TEXT |
YES” si la table est transitoire ou temporaire, sinon’NO”. Les tables transitoires et temporaires n’ont pas de période Fail-safe. |
ACTIVE_BYTES |
NUMBER |
Les octets appartenant à (et facturés à) cette table qui sont dans un état actif pour la table. |
TIME_TRAVEL_BYTES |
NUMBER |
Les octets appartenant à (et facturés à) cette table qui sont dans l’état Time Travel pour la table. |
FAILSAFE_BYTES |
NUMBER |
Les octets appartenant à (et facturés à) cette table qui sont dans l’état Fail-safe pour la table. |
RETAINED_FOR_CLONE_BYTES |
NUMBER |
Les octets appartenant à (et facturés à) cette table qui sont conservés après suppression car ils sont référencés par un ou plusieurs clones de cette table. |
TABLE_CREATED |
TIMESTAMP_LTZ |
Date et heure de création de la table. |
TABLE_DROPPED |
TIMESTAMP_LTZ |
Date et heure de destruction de la table. NULL si la table n’a pas été détruite. |
TABLE_ENTERED_FAILSAFE |
TIMESTAMP_LTZ |
Date et heure auxquelles la table, en cas de destruction, est passée à l’état Fail-safe, ou NULL. Dans cet état, la table ne peut pas être restaurée avec UNDROP. |
CATALOG_CREATED |
TIMESTAMP_LTZ |
Date et heure auxquelles la base de données contenant la table a été créée. |
CATALOG_DROPPED |
TIMESTAMP_LTZ |
Date et heure auxquelles la base de données contenant la table a été détruite. |
SCHEMA_CREATED |
TIMESTAMP_LTZ |
Date et heure auxquelles le schéma contenant la table a été créé. |
SCHEMA_DROPPED |
TIMESTAMP_LTZ |
Date et heure auxquelles le schéma contenant la table a été détruit. |
COMMENT |
TEXT |
Commentaire pour la table. |
Notes sur l’utilisation¶
Il peut y avoir un retard de 1-2 heures dans la mise à jour des statistiques relatives au stockage pour
active_bytes
,time_travel_bytes
,failsafe_bytes
etretained_for_clone_bytes
.ID et CLONE_GROUP_ID :
ID ne change pas pour une table tout au long de son cycle de vie, y compris si la table est renommée ou détruite.
CLONE_GROUP_ID est l’ID de l’ancêtre le plus ancien d’un clone, y compris si la table a été détruite, mais qu’il y a encore des coûts de stockage. Par exemple :
La table
t2
est clonée à partir det1
.La table
t3
est clonée à partir det2
.
Les trois tables listent les ID pour
t1
comme leur CLONE_GROUP_ID, même sit1
est détruite et éventuellement purgée de Snowflake.Si ID et CLONE_GROUP_ID sont identiques, la table n’est pas un clone.
Les octets de stockage sont toujours la propriété de la table dans laquelle ils ont été initialement ajoutés et sont donc facturés. Si la table est ensuite clonée, les métriques de stockage pour ces octets initiaux ne sont jamais transférées vers les clones, même si les octets sont supprimés de la table source.
Les tables clonées partagent le même stockage sous-jacent (au niveau de la micro-partition) jusqu’à ce que la table originale ou la table clonée soit modifiée. Avec chaque modification apportée à l’une ou l’autre table, la table devient « propriétaire » des octets modifiés.
Les tables détruites sont affichées dans la vue tant qu’elles entraînent encore des coûts de stockage :
Les tables détruites conservent leurs paramètres de stockage actifs, indiquant combien d’octets seront actifs si la table est restaurée.
Les tables détruites dans la période de conservation Time Travel de la table peuvent être restaurées à l’aide de la commande UNDROP.
Les tables détruites dans Fail-safe (TABLE_ENTERED_FAILSAFE n’est pas NULL) afficheront potentiellement des valeurs NULL dans la plupart des colonnes, sauf pour :
- les colonnes ID:
ID , CLONE_GROUP_ID
- les colonnes d’octets:
ACTIVE_BYTES , TIME_TRAVEL_BYTES , FAILSAFE_BYTES , RETAINED_FOR_CLONE_BYTES
Ces tables ne peuvent pas être restaurées avec UNDROP.
Lorsque des données sont supprimées d’une table avec une période de conservation Time Travel est de 0 jour, des processus d’arrière-plan asynchrones purgent les octets actifs ou les déplacent directement vers un stockage Fail-safe, selon le type de table. Cette opération peut prendre un certain temps. Pendant cette période, la colonne
TIME_TRAVEL_BYTES
peut contenir une valeur non nulle, même si la période de conservation Time Travel est de 0 jour.FAILSAFE_BYTES
indique les octets qui ont dépassé la période Time Travel. Tous ces octets sont facturés à la table courante.Si plusieurs lignes ont la même valeur dans la colonne TABLE_NAME, cela indique que plusieurs versions de la table existent. Une version est créée à chaque fois qu’une table est détruite et qu’une nouvelle table portant le même nom est créée, y compris lorsqu’une commande CREATE OR REPLACE TABLE est émise sur une table existante. Notez que la version actuelle aura une valeur NULL pour la colonne TABLE_DROPPED ; toutes les autres versions auront une valeur d’horodatage. Ceci est important à noter, car chaque version d’une table entraîne des coûts de stockage associés à Time Travel (et à Fail-safe, si la table est permanente).
Dans certains cas, les octets actifs peuvent inclure des octets pour des données dans une colonne supprimée. Pour plus d’informations, consultez les notes sur l’utilisation pour ALTER TABLE.