En muchas aplicaciones, la base de datos conserva principalmente el estado actual de cada entidad. Pero ¿qué pasaría si también pudiéramos conservar una secuencia de los acontecimientos que produjeron ese estado?
El event sourcing utiliza precisamente este enfoque. En lugar de almacenar únicamente el resultado final de una operación, registra eventos que representan los cambios ocurridos.
Por ejemplo, en una cuenta bancaria podrían registrarse eventos como depósito, retiro y ajuste. El saldo actual se obtiene aplicando esos eventos en orden.
Esto permite reconstruir el historial de cambios y comprender cómo se llegó a determinado estado.

También puede facilitar auditorías y análisis de procesos. Sin embargo, no es una arquitectura sencilla para todos los casos.
La reconstrucción del estado, la evolución de los eventos, el almacenamiento y la consistencia requieren un diseño cuidadoso. Además, no todos los eventos deberían contener datos personales innecesarios.
Mini guía práctica: considera event sourcing cuando el historial de cambios sea una parte esencial del negocio. Define cómo se versionarán los eventos y cómo se reconstruirá el estado.
Tip Winxgo: conservar un historial de acontecimientos puede aportar trazabilidad, pero también implica más complejidad y responsabilidades de almacenamiento.
¿En qué tipo de sistema consideras que sería especialmente útil conservar cada cambio como un evento?














Leave a Reply