Jak przechowywać zdarzenia w Event Sourcingu

Event store brzmi egzotycznie, ale to zwykła baza danych. Trzyma zdarzenia pogrupowane według rekordu, którego dotyczą, nowe zawsze dopisuje na końcu i daje te same gwarancje, których oczekujesz od bazy danych. Gdy to zobaczysz, łatwiej odpowiesz sobie na pytania o wydajność, spójność i wybór narzędzia.

Pierwsze artykuły wyjaśniają ten model i w godzinę budują prosty event store na PostgreSQL. Pokazują też, że bazy relacyjne w środku działają podobnie. Kolejne opisują, jak inne części systemu pamiętają, które zdarzenia już przetworzyły. Ostatnie zaglądają głębiej, do elementów, na których to wszystko stoi, i sprawdzają, czy S3 albo temporal tables mogą pełnić tę samą rolę.

Nie potrzebujesz tej wiedzy, żeby korzystać z gotowego event store’a. Pomoże ci za to zrozumieć, co gwarantuje i dlaczego.

  1. Event stores are key-value databases, and why that matters

    2023-04-07Event stores are the foundational building block of Event Sourcing. They’re also one of the biggest sources of confusion. They are databases turned upside down, append…
  2. Let's build event store in one hour!

    2023-01-08Last year, I completed two items from my speaker bucket list NDC Oslo and Domain-Driven Design Europe. I’m proud and happy, as those conferences were a huge inspirations…
  3. What if I told you that Relational Databases are in fact Event Stores?

    2021-02-03Are you one of those people saying that Event Sourcing is detached from reality? Do you think that you don’t need such extravagance, as you have relational databases? Why…
  4. Let's talk about positions in event stores

    2021-10-06Discussions about positions can be awkward, to say the least… It is also the case with positions in Event Sourcing. Each event store implementation has its own…
  5. Checkpointing the message processing

    2025-12-08Let’s start by asking you two questions. What Super Frog has to do with messaging? When was the last time you wrote if statements in SQL? If it’s been a long time, have…
  6. The Write-Ahead Log: A Foundation for Reliability in Databases and Distributed systems

    2024-12-07I want to talk with you today about the Write-Ahead Log concept. Why? Last month, I gave the “PostgreSQL Superpowers” talk again twice at .NET meetups. And I had random…
  7. Unobvious things you need to know about key-value stores

    2022-06-22Today I wanted to talk a bit about Key-Value databases. It is a seemingly obvious subject, but it is easy to overlook the basic assumptions and have a spectacular failure…
  8. Using S3 but not the way you expected. S3 as strongly consistent event store

    2024-09-02Welcome to the new week! Hype is strong in our industry, but the most powerful news usually comes surprisingly silent. That’s what happened with the latest AWS S3 update…
  9. Are Temporal Tables an alternative to Event Sourcing?

    2022-04-20I’ve been asked recently at least a few times about Temporal Tables and how they relate to Event Sourcing. Beware, and don’t confuse it with temporary tables. They are…