Suivi avec ACCOUNT_USAGE

Gestion, gouvernance et collaboration sur Snowflake

Emily Melhuish

Technical Curriculum Developer, Snowflake

Le problème de suivi

  • Quels entrepôts ont coûté le plus le mois dernier ?
  • Y avait-il des requêtes incontrôlées à détecter ?
  • Le stockage reste-t-il dans le budget ?
  • Des modèles de connexion inhabituels ?

ACCOUNT_USAGE répond à ces questions

Cadre de contrôle des coûts.png

Gestion, gouvernance et collaboration sur Snowflake

Qu’est-ce qu’ACCOUNT_USAGE ?

  • Un schéma dans la base système SNOWFLAKE
  • Contient des vues exposant l’historique du compte
  • Latence jusqu’à 3 heures
  • La plupart des vues conservent 365 jours

Vue d’ensemble du compte.png

Gestion, gouvernance et collaboration sur Snowflake

ACCOUNT_USAGE vs INFORMATION_SCHEMA

 

Fonctionnalité ACCOUNT_USAGE INFORMATION_SCHEMA
Portée Historique de tout le compte, toutes les bases État actuel de votre base de données
Latence des données Jusqu’à 3 heures Faible latence
Rétention Jusqu’à 365 jours Jusqu’à 6 mois (selon la vue)
Objets supprimés Inclus Non inclus
Cas d’usage principal Audit historique et analyse des coûts État actuel et métadonnées
Gestion, gouvernance et collaboration sur Snowflake

WAREHOUSE_METERING_HISTORY

  • Indique quels entrepôts ont consommé le plus de crédits
SELECT warehouse_name,
       SUM(credits_used) AS total_credits
FROM SNOWFLAKE.ACCOUNT_USAGE.WAREHOUSE_METERING_HISTORY
WHERE start_time >= DATEADD('day', -30, CURRENT_TIMESTAMP())
GROUP BY warehouse_name
ORDER BY total_credits DESC;
Gestion, gouvernance et collaboration sur Snowflake

QUERY_HISTORY

  • Enregistre chaque requête du compte
    SELECT query_text,
         warehouse_name,
         execution_time,
         bytes_scanned
    FROM SNOWFLAKE.ACCOUNT_USAGE.QUERY_HISTORY
    WHERE start_time >= DATEADD('day', -7, CURRENT_TIMESTAMP())
    ORDER BY execution_time DESC
    LIMIT 10;
    
Gestion, gouvernance et collaboration sur Snowflake

STORAGE_USAGE

  • Suit la consommation de stockage du compte
    • stockage actif et Fail-safe
      SELECT usage_date,
         ROUND(storage_bytes / POWER(1024, 3), 2) AS storage_gb,
         ROUND(failsafe_bytes / POWER(1024, 3), 2) AS failsafe_gb
      FROM SNOWFLAKE.ACCOUNT_USAGE.STORAGE_USAGE
      ORDER BY usage_date DESC
      LIMIT 30;
      
Gestion, gouvernance et collaboration sur Snowflake

LOGIN_HISTORY

  • Enregistre chaque tentative de connexion au compte
    • Réussie ou non
SELECT user_name,
       event_timestamp,
       reported_client_type,
       error_code,
       error_message
FROM SNOWFLAKE.ACCOUNT_USAGE.LOGIN_HISTORY
WHERE error_code IS NOT NULL
  AND event_timestamp >= DATEADD('day', -7, CURRENT_TIMESTAMP())
ORDER BY event_timestamp DESC;
Gestion, gouvernance et collaboration sur Snowflake

Passons à la pratique !

Gestion, gouvernance et collaboration sur Snowflake

Preparing Video For Download...