Я пытаюсь изучить Event Sourcing (используя Greg Youngs Event Store) в свободное время. Я настроил простой поток, и я могу читать из него и писать в него.
Пожалуйста, смотрите эту ссылку: https://eventstore.org/docs/getting-started/?tabs=tabid-1%2Ctabid-dotnet-client%2Ctabid-dotnet-client-connect%2Ctabid-4. Там написано:
«Если вы используете Event Sourcing для доменной модели, поток приравнивается к статистической функции.»
Не думаю, что я когда-либо сталкивался с термином «Агрегатная функция» раньше - я знаю агрегатный корень и агрегат, но не агрегатную функцию. Скажем, у меня есть события ниже:
BookingCreatedEvent
BookingUpdatedEvent
Если бы я должен был создать журнал событий на сервере SQL, он мог бы выглядеть примерно так (столбец Cargo содержит сериализованный объект):
![enter image description here](https://i.stack.imgur.com/UYY4U.png)
Какие потоки событий у меня будут в Event Store для этого? Я читал ответ от пользователя, который, кажется, очень хорошо разбирается в Event Sourcing, и он предложил следующее:
AggregateType+AggregateId+Version
На этом основании полагают, что события будут названы следующим образом:
BookingCreatedEvent511 (51 is the aggregate ID and 1 is the version)
BookingUpdatedEvent511 (51 is the aggregate ID and 1 is the version)
BookingUpdatedEvent512 (51 is the aggregate ID and 2 is the version)
BookingCreatedEvent521 (52 is the aggregate ID and 1 is the version)
BookingUpdatedEvent513 (51 is the aggregate ID and 3 is the version)
BookingCreatedEvent531 (53 is the aggregate ID and 1 is the version)
BookingUpdatedEvent514 (51 is the aggregate ID and 4 is the version)
BookingUpdatedEvent515 (51 is the aggregate ID and 5 is the version)
BookingUpdatedEvent516 (51 is the aggregate ID and 6 is the version)
BookingUpdatedEvent517 (51 is the aggregate ID and 7 is the version)
Таким образом, существует 10 потоков событий. Это немного сбивает с толку, т. Е. Объединение совокупного идентификатора и версии - например, скажем, у меня было следующее:
BookingUpdatedEvent51745
Как узнать, какая часть 51745 является идентификатором агрегата, а какая - версией.
Правильно ли я понял?