Resilience: The rise of events, a Copernican view on data
There was an indisputable truth to every system built up to some years ago: a database with a single managed data model as a starting point. As the need for agility and speed increased, this truth has proven to be a significant stumbling block.
Data (not) at the center
This challenge has been technically addressed with the advent of new storage technologies like document, graph, and semantic databases. However, with the emergence of this new, polyglot reality, it has become clear that understanding and using these new possibilities have proven to be far from simple. It’s almost similar to the experience Copernicus had after he conceived a model of the universe that placed the Sun rather than the Earth at the center of the universe. Game-changing stuff at the time.
Like the errors that astronomers made before Copernicus, many architects and technologists are obsessed with the idea that data is at the center of the computing universe. This thinking often leads to static, stove-piped, monolithic systems with a single database at the center, hard to change or migrate over time because of its volume and complexity.
Thinking in events
Let’s take a look at a resilient example we all know: our own body. We constantly react to and act upon events that arrive via our senses. These events relay information that’s stored in our memory, replayed in our minds, and may lead to an action that produces new events.
Thinking in an event-driven manner turns organizations into a sensory element in the universe of computing. New events sensed by web applications, mobile apps, IoT sensors, and legacy systems are forwarded to an infrastructure that can process and store events properly. Just like the way our sensory system sends events to our central nervous system for interpretation.
In this event-driven world, the central system should be able to:
- Receive and process different stimuli lightning fast.
- Store, retrieve, and combine
- Adapt to changes in events and event processing.
This resilient and highly scalable system is made possible by combining the advantages of an event-sourced architecture with a fit-for-purpose approach to storing event objects. By storing all state changes as a sequence of events, (re)building its state can be done by simply (re)applying all events.
Resilient, scalable, adaptable, secure: InformationGrid
Designed and developed by Luminis, InformationGrid exemplifies this approach and adds adaptability and security:
- Integrated security in event objects. By separating events from event-processing, it is possible to implement fine-grained authorization mechanisms for information.
- Data adaptability. By assuming that event objects can change over time and designing mechanisms that can handle these changes, it is possible to create resilient data strategies.
- High scalability. Using an event-sourced approach allows you to separate data storage, data processing, and data querying. This results in very high scalability.
Resilience engineering: an introduction
Over the past years, people at Luminis have become involved in the design and development of new types of systems. Systems that implement requirements beyond stability and robustness. Systems that need to be resilient. Systems that can cope with unforeseen...
Time for event thinking
So, the central data model’s problems have been solved, and the new model’s complexity has been tamed. Time for all digital businesses to leverage event processing so that they can be always-sensing and always-ready:
“Application leaders engaged in digital transformation initiatives must add ‘event thinking’ to their technical, organizational, and cultural strategies.”