Saltar al contenido
Explorar conocimiento

concepto · intermedio · 2 min de lectura

Redis Streams

Redis Streams es una estructura de datos de Redis que implementa un log de eventos persistente, permitiendo streaming, consumer groups y procesamiento de mensajes con la velocidad de Redis.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • Redis Streams as a concept

No cubre

  • implementation details

Supone

  • The reader understands relevant fundamentals.

Resumen

Redis Streams, introducido en Redis 5.0, agrega capacidades de streaming al motor en memoria de Redis. Funciona como un log append-only donde las entradas tienen un ID único —basado en timestamp— y campos clave-valor. Los consumidores pueden leer el stream desde el principio, desde un punto específico, o solo entradas nuevas.

A diferencia de Kafka, Redis Streams no tiene particiones ni replicación multi-datacenter nativa. Pero para casos de uso donde los datos caben en memoria o ya usás Redis, Streams es una alternativa liviana y de baja latencia a Kafka.

Alcance y supuestos

Cubre Redis Streams, consumer groups y su contraste con Kafka. Asume familiaridad con Redis y mensajería.

Modelo mental

Una cinta transportadora en una fábrica. Los productos —mensajes— pasan por la cinta en orden. Los operarios —consumidores— toman productos de la cinta y los procesan. Si un operario se ausenta, otro puede tomar sus productos pendientes —consumer group con failover—.

Uso práctico

  • ✅ Eventos en tiempo real, notificaciones, logs estructurados.
  • ❌ Streaming masivo con terabytes de datos históricos.

Ejemplo trabajado: stream de eventos en Redis

XADD events * type login user_id 42
XREAD COUNT 10 STREAMS events 0
XREADGROUP GROUP workers worker1 BLOCK 0 STREAMS events >

Evidencia

  • Redis Streams está documentado en redis.io. Soporta consumer groups, acknowledging y pending entries.

Fuentes citadas