Övervakning med ACCOUNT_USAGE

Snowflake-hantering, styrning och samarbete

Emily Melhuish

Technical Curriculum Developer, Snowflake

Övervakningsproblemet

  • Vilka lager kostade mest förra månaden?
  • Förekom okontrollerade frågor som borde ha stoppats?
  • Ryms lagringen inom budgeten?
  • Förekom ovanliga inloggningsmönster?

ACCOUNT_USAGE kan besvara dessa frågor

Ramverk för kostnadskontroll.png

Snowflake-hantering, styrning och samarbete

Vad är ACCOUNT_USAGE?

  • Ett schema i systemdatabasen SNOWFLAKE
  • Innehåller vyer med historiska kontodata
  • Latens på upp till 3 timmar
  • De flesta vyer behåller data i 365 dagar

Kontoöversikt.png

Snowflake-hantering, styrning och samarbete

ACCOUNT_USAGE vs INFORMATION_SCHEMA

 

Funktion ACCOUNT_USAGE INFORMATION_SCHEMA
Omfång Historik för hela kontot, alla databaser Aktuellt tillstånd för databasen
Datalatens Upp till 3 timmar Låg latens
Lagring Upp till 365 dagar Upp till 6 månader (varierar)
Borttagna objekt Inkluderade Inte inkluderade
Primärt användningsfall Historisk granskning och kostnadsanalys Aktuellt tillstånd och metadata
Snowflake-hantering, styrning och samarbete

WAREHOUSE_METERING_HISTORY

  • Visar vilka lager som förbrukade flest krediter
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;
Snowflake-hantering, styrning och samarbete

QUERY_HISTORY

  • Registrerar varje fråga i kontot
    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;
    
Snowflake-hantering, styrning och samarbete

STORAGE_USAGE

  • Spårar kontots lagringsanvändning
    • både aktiv lagring och Fail-safe-lagring
      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;
      
Snowflake-hantering, styrning och samarbete

LOGIN_HISTORY

  • Registrerar varje inloggningsförsök mot kontot
    • Lyckade och misslyckade
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;
Snowflake-hantering, styrning och samarbete

Dags att öva!

Snowflake-hantering, styrning och samarbete

Preparing Video For Download...