Skip to main content

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.