Volver a la lista

¿Qué es una base de datos?

En tan solo cinco minutos, comprenderá la utilidad de las bases de datos, sus diferencias con los archivos y las distinciones entre CRUD y SQL/NoSQL.

Principiante
|
5min
|
Verificado (2026-07)
Progreso0/55 (0%)

¿Qué es una base de datos?

Al finalizar este tema

Podrás explicar por qué son necesarias las bases de datos y comprenderás el significado de CRUD y la diferencia entre SQL y NoSQL.


Por qué los archivos no son suficientes

Si un programa necesita almacenar datos, el método más simple es utilizar archivos. Por ejemplo, guardar una lista de usuarios en un archivo JSON.

json
[
  {"id": 1, "name": "Kim Hoon", "email": "hoon@example.com"},
  {"id": 2, "name": "Lee Su", "email": "su@example.com"}
]

Este enfoque funciona bien al principio, pero pronto surgen problemas:

  • Cuando hay 10.000 usuarios, la búsqueda se vuelve lenta — porque es necesario leer todo el archivo
  • Si dos personas modifican simultáneamente, los datos se sobrescriben
  • Para preguntas complejas como "encuentra solo los usuarios cuyo correo electrónico sea 'naver.com'", hay que escribir código directamente

Las bases de datos (DB) son sistemas especializados de almacenamiento y búsqueda de datos diseñados para resolver estos problemas.


CRUD — Las cuatro operaciones de los datos

Lo que hace una base de datos se reduce a cuatro cosas:

OperaciónSignificadoPalabra clave SQL
CreateCrear nuevos datosINSERT
ReadLeer/buscar datosSELECT
UpdateModificar datos existentesUPDATE
DeleteEliminar datosDELETE

Casi todas las funciones de una aplicación web son combinaciones de CRUD. Registro de usuarios (C), lista del tablón de anuncios (R), edición del perfil (U), eliminación de la cuenta (D).


Bases de datos relacionales — Organización en tablas

El método más antiguo y ampliamente utilizado es la base de datos relacional (RDBMS). Almacena los datos en forma de tablas.

text
tabla users:
+----+--------+---------------------+
| id | name   | email               |
+----+--------+---------------------+
|  1 | Kim Hoon   | hoon@example.com    |
|  2 | Lee Su   | su@example.com      |
+----+--------+---------------------+

Cada fila representa un dato y cada columna representa un atributo. El lenguaje que se utiliza para consultar esta tabla es SQL.

sql
-- Buscar usuarios cuyo correo sea naver.com
SELECT name, email FROM users WHERE email LIKE '%@naver.com';

Sistemas de gestión de bases de datos relacionales (RDBMS) destacados: MySQL, PostgreSQL, SQLite, Oracle.


NoSQL: bases de datos no tabulares

No todos los datos se ajustan perfectamente a una estructura tabular. Cuando cada usuario tiene atributos diferentes o la estructura de los datos cambia con frecuencia, se utiliza NoSQL.

json
// Ejemplo de documento de MongoDB
{
  "_id": "abc123",
  "name": "Kim Hoon",
  "skills": ["Python", "JavaScript"],
  "address": {
    "city": "Seúl",
    "district": "Gangnam"
  }
}

Almacena datos en una estructura similar a JSON, sin necesidad de SQL. Es flexible, pero puede resultar incómodo para gestionar relaciones complejas (JOIN).

Algunos ejemplos de bases de datos NoSQL son: MongoDB, Redis, Firebase y Supabase (basada en PostgreSQL, pero como BaaS).


¿Qué debo aprender?

SituaciónRecomendación
Fundamentos del desarrollo webMySQL o PostgreSQL (SQL es imprescindible)
Desarrollo rápido de prototiposSupabase, Firebase (configuración mínima)
Gestión de grandes volúmenes de datos no estructuradosMongoDB

Inicialmente, es recomendable aprender SQL. SQL proporciona una base sólida independientemente de la base de datos que se utilice y ayuda a desarrollar una forma de pensar adecuada para la gestión de datos.


→ Aplicación en el ámbito biológico: DevBench — Fundamentos de bases de datos

💬 Preguntas y comentarios

0 comentarios

Puedes publicar sin iniciar sesión. Los comentarios de invitados no pueden editarse ni eliminarse después.

0/2000

Cargando...