Esquema de base de datos
El plano de una base de datos: qué tablas hay, sus columnas y cómo se conectan.
El esquema de base de datos (schema) es la descripción de cómo está organizada una base de datos: qué tablas tiene, qué columnas tiene cada tabla, qué tipo de valor va en cada columna (un número, una fecha, un texto), qué columnas son obligatorias y cómo se relacionan las tablas entre sí. Describe la forma de los datos, no los datos.
Pensá en una tienda online. El esquema puede decir que hay una tabla customers con un id, un name y un email que no puede quedar vacío, y una tabla orders con un id, un customer_id, un total con dos decimales y una fecha created_at. Con eso definido, la base rechaza un pedido con total "banana" o sin cliente. En SQL, el esquema se escribe con comandos como CREATE TABLE y se modifica con ALTER TABLE.
Los esquemas cambian a medida que cambia el producto, y eso es delicado: renombrar una columna puede romper todos los reportes y apps que la leen. Los equipos lo manejan con migraciones, pequeños scripts versionados que cambian el esquema paso a paso y se revisan como código. En algunas bases, como PostgreSQL, la palabra tiene además un sentido más chico: un schema es una carpeta con nombre que agrupa tablas.
Para quedarse
- Define tablas, columnas, tipos de datos, campos obligatorios y relaciones.
- Permite que la base rechace datos con la forma equivocada.
- Se escribe y se cambia en SQL, idealmente con migraciones versionadas.
- Un warehouse controla el esquema al escribir; un data lake lo aplica al leer.