Ako bih koristio RDBMS (npr. SQL Server) za pohranu podataka o izvorima događaja, kako bi shema mogla izgledati?
Vidio sam nekoliko varijacija o kojima se govori u apstraktnom smislu, ali ništa konkretno.
Na primjer, recimo da netko ima entitet "Proizvod", a promjene na tom proizvodu mogu se pojaviti u obliku: cijena, cijena i opis. Zbunjen sam oko toga da li bih:
Posebno me brine opcija 2 iznad. U krajnjem slučaju, tablica proizvoda bila bi gotovo jedna tablica po svojstvu, a za učitavanje stanja aplikacije za dati proizvod bilo bi potrebno učitavanje svih događaja za taj proizvod iz svake tablice događaja proizvoda. Ova eksplozija stola mi miriše pogrešno.
Siguran sam da "ovisi", i premda ne postoji jedinstveni "točan odgovor", pokušavam steći osjećaj što je prihvatljivo, a što potpuno neprihvatljivo . Također sam svjestan da ovdje može pomoći NoSQL, gdje bi se događaji mogli pohraniti prema agregatnom korijenu, što znači samo jedan zahtjev bazi podataka da bi se događaji iz njih obnovili, ali ne koristimo NoSQL db u trenutak, pa se osjećam oko alternativa.