Requêtes pour connaître la taille des bases de données et la taille des tables :

Taille des bases de données :

En bytes En Giga
SELECT
  table_catalog AS database,
  table_schema AS schema,
  SUM(bytes) AS bytes
FROM "<base de donnée>".information_schema.tables
GROUP BY database, schema
UNION ALL
SELECT
  table_catalog AS database,
  table_schema AS schema,
  SUM(bytes) AS bytes
FROM "SNOWFLAKE".information_schema.tables
GROUP BY database, schema;
SELECT
table_catalog AS database,
table_schema AS schema,
 SUM(bytes) / POWER(1024, 3) AS taille_en_GB
FROM "<base de donnée>".information_schema.tables
GROUP BY database, schema
UNION ALL
SELECT
table_catalog AS database,
table_schema AS schema,
 SUM(bytes) / POWER(1024, 3) AS taille_en_GB
FROM "SNOWFLAKE".information_schema.tables
GROUP BY database, schema;

Taille des bases de données par schéma, pour cela il faut être administrateur / orgadmin :  

Pensez à choisir et utiliser un warehouse pour éviter d'avoir le message d'erreur : 

000606 (57P03): No active warehouse selected in the current session.  Select an active warehouse with the 'use warehouse' command.

 

SELECT
      TABLE_CATALOG AS DATABASE_NAME,
      TABLE_SCHEMA AS SCHEMA_NAME,
      DELETED,
      SUM(ACTIVE_BYTES) / POWER(1024, 3) AS ACTIVE_GB,
      SUM(TIME_TRAVEL_BYTES) / POWER(1024, 3) AS TIME_TRAVEL_GB,
      SUM(FAILSAFE_BYTES) / POWER(1024, 3) AS FAILSAFE_GB,
      SUM(ACTIVE_BYTES + TIME_TRAVEL_BYTES + FAILSAFE_BYTES) / POWER(1024, 3) AS TOTAL_GB
FROM SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICS
GROUP BY DATABASE_NAME, SCHEMA_NAME, DELETED
ORDER BY TOTAL_GB DESC;

Taille des tables :

select table_schema,
       table_name,
       round(bytes/1024/1024, 2) as table_size
from information_schema.tables
where table_type = 'BASE TABLE'
order by table_size desc;
Taille des tables et le nombre de lignes dans chaque table :
SELECT
  table_schema      AS nom_schema,
  table_name        AS nom_table,
  row_count         AS nombre_de_lignes,
  ROUND(bytes/1024/1024, 2) AS taille_en_mb
FROM
  INFORMATION_SCHEMA.TABLES
WHERE
  table_type = 'BASE TABLE'
ORDER BY
  bytes DESC;
La même chose mais pour une table nommée :
SELECT
  table_schema      AS nom_schema,
  table_name        AS nom_table,
  row_count         AS nombre_de_lignes,
  ROUND(bytes/1024/1024, 2) AS taille_en_mb
FROM
  INFORMATION_SCHEMA.TABLES
WHERE
  table_type = 'BASE TABLE'
  AND
  table_name = '<nom_table>';

⚠️ Attention la taille des bases / tables ne représentent pas la taille réelle utilisé sur le disque , voir Snowflake : espace disque utilisé