Cuando trabajamos en plataformas de datos modernas, no solo necesitamos consultar los datos almacenados en tablas, sino también comprender la estructura del sistema: qué tablas existen, qué columnas tienen, quién creó ciertos objetos o cuándo fueron modificados.
Para facilitar este tipo de análisis, Snowflake ofrece el INFORMATION_SCHEMA, un conjunto de vistas que permiten consultar metadatos sobre los objetos de una base de datos.
Estas vistas proporcionan información útil sobre la estructura del entorno de datos y permiten inspeccionar distintos aspectos del sistema mediante consultas SQL.
Qué es INFORMATION_SCHEMA
El INFORMATION_SCHEMA es un esquema especial disponible en cada base de datos de Snowflake que contiene vistas con información sobre los objetos del sistema.
Estas vistas permiten consultar metadatos relacionados con:
- tablas
- vistas
- columnas
- esquemas
- roles
- permisos
- consultas
El objetivo es ofrecer una forma estándar de explorar la estructura del sistema utilizando SQL.
Qué tipo de información contiene
Las vistas del INFORMATION_SCHEMA proporcionan información sobre muchos aspectos del entorno de datos.
Entre ellos se incluyen:
- definición de tablas
- estructura de columnas
- información sobre usuarios y roles
- privilegios y permisos
- historial de consultas
- dependencias entre objetos
Esto permite analizar la arquitectura de datos y comprender mejor cómo está organizado el sistema.
Consultar tablas existentes
Una de las consultas más comunes consiste en listar todas las tablas de una base de datos.
Ejemplo:
SELECT *
FROM INFORMATION_SCHEMA.TABLES;
Esta consulta devuelve información sobre todas las tablas disponibles en la base de datos actual.
Entre los datos disponibles se incluyen:
- nombre de la tabla
- tipo de tabla
- fecha de creación
- esquema al que pertenece
Consultar columnas de una tabla
También es posible consultar la estructura de las columnas de una tabla.
Ejemplo:
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = ‘SALES’;
Esta consulta devuelve información como:
- nombre de la columna
- tipo de dato
- posición dentro de la tabla
- si permite valores nulos
Esto resulta muy útil cuando se analiza la estructura de un dataset.
Consultar vistas disponibles
El INFORMATION_SCHEMA también permite listar las vistas definidas en una base de datos.
Ejemplo:
SELECT *
FROM INFORMATION_SCHEMA.VIEWS;
Esto muestra las vistas disponibles junto con información sobre su definición.
Revisar privilegios y permisos
Otra aplicación importante del INFORMATION_SCHEMA es revisar permisos sobre objetos.
Ejemplo:
SELECT *
FROM INFORMATION_SCHEMA.TABLE_PRIVILEGES;
Esto permite identificar qué roles o usuarios tienen acceso a determinadas tablas.
Este tipo de información es útil para auditoría y gobernanza de datos.
Analizar el uso de objetos
Las vistas del INFORMATION_SCHEMA también pueden ayudar a comprender cómo se utilizan los objetos dentro del sistema.
Por ejemplo, se pueden analizar dependencias entre vistas y tablas para entender cómo se construyen los modelos de datos.
Esto puede ser útil para:
- documentar pipelines de datos
- identificar dependencias entre objetos
- analizar impacto de cambios en tablas
INFORMATION_SCHEMA vs ACCOUNT_USAGE
En Snowflake existen diferentes fuentes de metadatos.
El INFORMATION_SCHEMA proporciona información a nivel de base de datos, mientras que el esquema ACCOUNT_USAGE ofrece vistas más amplias a nivel de cuenta.
En general:
- INFORMATION_SCHEMA → información inmediata a nivel de base de datos
- ACCOUNT_USAGE → información histórica a nivel de cuenta
Ambos esquemas pueden complementarse para análisis más completos.
Casos de uso comunes
El INFORMATION_SCHEMA se utiliza frecuentemente en distintos escenarios.
Por ejemplo:
- explorar la estructura de una base de datos
- documentar modelos de datos
- auditar permisos
- analizar dependencias entre objetos
- generar catálogos de datos
Esto lo convierte en una herramienta muy útil para ingenieros de datos y administradores.
Buenas prácticas al utilizar INFORMATION_SCHEMA
Al trabajar con INFORMATION_SCHEMA es recomendable:
- filtrar consultas para evitar devolver demasiados resultados
- utilizarlo para documentar estructuras de datos
- combinarlo con otras vistas de metadatos
- automatizar consultas para generar documentación
Estas prácticas ayudan a mantener visibilidad sobre la arquitectura de datos.
INFORMATION_SCHEMA en arquitecturas modernas de datos
En entornos donde múltiples equipos trabajan con la misma plataforma de datos, disponer de herramientas que permitan explorar metadatos es fundamental.
El INFORMATION_SCHEMA facilita esta tarea al permitir consultar información estructural del sistema utilizando SQL.
Esto ayuda a mantener la transparencia y la gobernanza dentro de las arquitecturas de datos modernas.
Conclusión
El INFORMATION_SCHEMA es una herramienta clave dentro de Snowflake que permite explorar metadatos sobre los objetos del sistema. Mediante estas vistas es posible analizar la estructura de bases de datos, revisar permisos y comprender mejor cómo se organizan los datos dentro de la plataforma.
Para ingenieros de datos y administradores, dominar el uso del INFORMATION_SCHEMA facilita la gestión del entorno y mejora la comprensión de la arquitectura de datos.




