Discussion about this post

User's avatar
Gaëlle Seret's avatar

Dare I say that architecture is another way to do politics 🤭 Just joking ! Thank you 🥰

Expand full comment
Patrick Manoukian's avatar

Excellent article which is a golden mine of solutions for the future.

There is an architectural key here under the "event store" cited in the article, it is the "event sourcing" design. Event sourcing is a way to store events and not raw data. Because you can recreate the data from events but cannot recreate events from data.

We have the technology to design event sourcing architectures since roughly 10 years. But there are 2 blockers for that: the lack of compatible business design, which can be solved with DDD and its bounded contexts approaches. And the mindset shift: we are losing lots of architecture departments when referring to sourcing events instead of data. But the mathematical tools allow us to manage events, when stored according to the identified bounded contexts, very quickly and with a precision that storing raw data cannot provide. An event "PurchasedCompleted" weights much more precise information than "the raw data itself resulting from the purchase".

What about performance and ecology of actions? That's where the CQRS architectural pattern comes in: separation of concerns between an acceptable "slow" database of writing events, and a hugely fast database of normalized (for the bounded context) data, which is read-only, and very fast. What's interesting here, is that the reading database (the production) is throwable. A bug? The reading database can always be recreated from the event database.

But for that, a huge mindset shift is mandatory to change from traditional architecture.

Expand full comment
5 more comments...

No posts