Contenido del curso
Bases de Datos: De Cero a Experto

🎯 Objetivo:

Entender qué es Apache Cassandra, para qué se usa y qué lo hace diferente dentro del mundo NoSQL.


🔎 ¿Qué es Apache Cassandra?

Apache Cassandra es una base de datos NoSQL distribuida y altamente escalable, diseñada para manejar grandes volúmenes de datos en múltiples servidores, sin caídas y con altísima velocidad.

Fue creada por Facebook y luego liberada como proyecto open source en Apache.


🚀 ¿Para qué sirve Cassandra?

Cassandra es ideal para:

  • Aplicaciones que necesitan alta disponibilidad (no se puede caer).

  • Almacenar millones o billones de registros.

  • Entornos donde se reciben datos continuamente (ej. IoT, redes sociales, logs).

  • Sistemas distribuidos geográficamente.


🧠 ¿Qué lo diferencia de otras bases?

Característica Cassandra
🧱 Modelo de datos Tipo tabla, pero sin relaciones (NoSQL).
🌍 Escalabilidad Horizontal: puedes agregar más servidores sin detener el sistema.
⚡ Velocidad Muy rápida en escritura, ideal para grandes volúmenes de datos.
⛓️ Sin punto único de falla Si cae un nodo, los demás siguen funcionando.
🔁 Replicación automática Los datos se replican automáticamente en varios nodos.

📦 Ejemplos de uso reales

Caso Cómo ayuda Cassandra
Instagram Almacenar likes, comentarios y actividad masiva.
Netflix Guardar logs de actividad y recomendaciones al vuelo.
Uber Manejar millones de eventos geográficos en tiempo real.
Bancos Detección de fraudes y monitoreo continuo.

🧰 ¿Cómo se ve una tabla en Cassandra?

Aunque es NoSQL, Cassandra usa un modelo similar a tablas, pero:

  • No hay claves foráneas ni joins.

  • Tiene claves de partición y claves de ordenamiento para distribuir los datos.

Ejemplo:

cql
CREATE TABLE usuarios (
usuario_id UUID PRIMARY KEY,
nombre TEXT,
correo TEXT,
edad INT
);

👉 Se usa CQL (Cassandra Query Language), muy similar a SQL pero sin relaciones.


🎯 Ventajas principales

✅ Alta disponibilidad
✅ Rendimiento lineal (más nodos = más rendimiento)
✅ Preparada para grandes cantidades de datos
✅ Sin necesidad de detener el servicio para escalar
✅ Ideal para sistemas distribuidos globalmente


⚠️ ¿Y sus limitaciones?

❌ No es ideal para sistemas que necesitan integridad relacional fuerte (como un banco).
❌ No permite JOINs ni relaciones complejas.
❌ Puede ser compleja de configurar y mantener.


📝 Actividad práctica

  1. Piensa en una aplicación móvil con miles de usuarios activos por minuto (como TikTok).
    ¿Por qué Cassandra sería una buena base para manejar sus datos?

  2. Escribe al menos 2 diferencias entre Cassandra y MongoDB.


✅ Revisión rápida

  • ¿Qué tipo de escalabilidad ofrece Cassandra?

  • ¿Qué pasa si un nodo de Cassandra falla?

  • ¿Qué lenguaje de consulta se usa en Cassandra?

Scroll al inicio