Programa

Fundamentos transversales

Marco teórico común a todas las áreas del curso. Establece los modelos y abstracciones necesarias para razonar sobre sistemas donde las fallas parciales, la ausencia de relojes globales y la concurrencia son la norma.

Áreas de aplicación

Los contenidos se organizan en cuatro áreas de aplicación que no son independientes entre sí: los mismos problemas de consenso, replicación y consistencia aparecen en todas ellas. La división busca claridad pedagógica, no fronteras rígidas.

Área 1 — Compute

Cómo coordinar múltiples nodos para ejecutar trabajo de forma correcta, eficiente y tolerante a fallos, desde los paradigmas clásicos de cómputo batch hasta los límites que los vuelven insuficientes.

Área 2 — Storage

Persistir datos en múltiples nodos implica navegar trade-offs fundamentales entre consistencia, disponibilidad y performance. Esta área estudia cómo los sistemas reales resuelven esos trade-offs, desde filesystems hasta bases de datos globalmente distribuidas, y qué implica ofrecerlos como servicio gestionado.

Área 3 — Stream Processing

Muchas decisiones no pueden esperar a un procesamiento batch. Esta área estudia cómo procesar flujos de datos en tiempo real con garantías semánticas precisas, y los modelos de mensajería que hacen posible la comunicación asíncrona a escala.

Área 4 — Consenso descentralizado

Todo lo anterior asume nodos que cooperan y una autoridad que decide quién manda. Esta área estudia qué queda del problema cuando se retiran ambos supuestos: cómo un sistema abierto, entre participantes que no confían entre sí, llega igual a un acuerdo sobre un único orden de eventos.