私は現在、イベントストアの内部構造を構築する方法を理解しようとしています。私がこれまでに得たもの:
- イベントストアには2つのテーブル(コレクション、...)があり、1つは集計用、もう1つはイベント用です。
- 集計テーブルには、次のデータが含まれています:(
aggregateId
おそらくGUIDになります)およびaggregateVersion
(この集計に影響を与えた最後のイベントの数を単に表す整数です)。 - イベントテーブルには、次のデータが含まれています:(
eventId
ここでもGUID)、aggregateId
(イベントが属する)、、、payload
およびversion
(イベントの順序を表す単なる整数)。
これは今のところ正しいですか?イベントは整数を使用して順序付けする必要がありますか?または、タイムスタンプに基づいて並べ替える必要がありますか?それぞれの利点は何ですか?欠点は何ですか?