घटनास्रोतधर्मः। योजनाकोषे (२४ अक्टो) रूपम्। अत्र इतिहासः कथं सत्यम्। event log, projection, snapshot। न केवलं CRUD; स्रोतधर्मः

English (minimizable)

After schema registry (24 Oct), this post covers event sourcing: immutable append logs, aggregates, projections, snapshots, schema evolution, idempotent handlers, privacy tension and when not to use ES.

पूर्ण-शीर्षकम् / Full title

घटनास्रोतधर्मः: A Metrical Codification of Event Sourcing (with English glosses)

English · overview and topics (minimizable)

What this post is about

Event sourcing stores domain changes as an ordered append-only event log and derives state by replaying those events (often with snapshots).

Topics covered

  1. State-only storage loses history
  2. Append-only immutability
  3. Aggregate/stream boundaries
  4. Read-model projections
  5. Snapshots for fast rebuild
  6. Schema evolution with registry
  7. Idempotent projectors
  8. Erasure vs immutability
  9. When ES is the wrong tool
  10. Contrast with ledger and CDC

Sanskrit title

घटनास्रोतधर्मः = ghaṭanā-srota-dharmaḥ “dharma of the event-source”.

English

Minimizable; Sanskrit-first.

परम्परा-सन्धिः / Series links
पूर्वं / Prior अत्र / Adds न पुनः / Does not repeat
योजनाकोषधर्मः (२४ अक्टो) schemas event payload compat
परिवर्तनप्रवाहः (१३ अक्टो) CDC DB-level changes not domain ES
अभिलेखतन्त्रम् (९ जुलै) ledger related immutability
इदमर्थकुञ्चिका (४ अक्टो) idempotency projector safety
इदम् event log projections snapshots -
ग्राह्य-त्याज्य-विवेकः / Keep and avoid

ग्राह्यम् / Keep

१. append-only events: no silent rewrite
२. aggregate keys: stream boundaries
३. async projections: for reads
४. snapshots: bounded replay
५. compat schemas: registry-backed
६. erasure plan: crypto-shred or policy
७. adopt with cause: not fashion CRUD

त्याज्यम् / Avoid

  • mutate historical events in place
  • query raw event log for every UI list
  • ignore GDPR on infinite logs
अध्याय-योजना / Chapter plan
प्रकरणम् विषयः छन्दः श्लोकाः
मङ्गलं बीजं च / Opening अनुष्टुभ्
मूलतत्त्वानि / Core अनुष्टुभ्
मुख्यविधिः / Method उपजाति
रक्षा · विधिः / Guards अनुष्टुभ्
विवेक · सीमा / Judgment अनुष्टुभ्
पूर्वसन्धिः / Series links उपजाति
उपसंहारः / Close अनुष्टुभ्
पारिभाषिक-कोशः / Glossary
Modern English संस्कृतम् Note
event sourcing घटनास्रोतीकरणम्  
event log घटनापङ्क्तिः  
aggregate समुच्चयः / aggregate  
projection प्रक्षेपणम् / read model  
snapshot स्नैपशॉट / पूर्णचित्रम्  
CQRS लेखपठनभेदः  
compensating event क्षतिपूरणघटना  
stream प्रवाहः  
rehydration पुनर्जलयणम् / rebuild  
crypto-shredding कुञ्जीनाशगुप्तिः  

श्लोकः १ (अनुष्टुभ्)

यदि केवलं अन्तिमस्थितिः स्मृता तदा इतिहासः नश्यति ।
घटनास्रोतधर्मस्तस्माद् सत्यपङ्क्तिः ॥१॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
यदि केवलं अन्तिमस्थितिः स्मृता तदा इतिहासः नश्यति । घटनास्रोतधर्मस्तस्माद् सत्यपङ्क्तिः ॥१॥

Word-for-word

संस्कृतपदम् Word-for-word English
यदि if
केवलम् only
अन्तिमस्थितिः final state
स्मृता remembered
इतिहासः history
नश्यति perishes
घटनास्रोतधर्मः event-source dharma
सत्यपङ्क्तिः truth-row/log

Gloss table

पदम् अर्थः / sense
अन्तिमस्थितिः current state only
घटनास्रोतधर्मः event sourcing
सत्यपङ्क्तिः truth as event log

English sense
Event sourcing stores every state change as an immutable event. Current state is a projection of the log not the only record.

Context / topic
Topic: why event sourcing. Distinct from CDC which captures DB rows.

वृत्तमिति: ८-८-८-८।

श्लोकः २ (अनुष्टुभ्)

append-only पङ्क्तिः प्रामाणिकी ।
update-in-place इतिहासं हन्ति ॥२॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
append-only पङ्क्तिः प्रामाणिकी । update-in-place इतिहासं हन्ति ॥२॥

Word-for-word

संस्कृतपदम् Word-for-word English
append-only append-only
पङ्क्तिः log
प्रामाणिकी authoritative
update-in-place update in place
इतिहासम् history
हन्ति kills

Gloss table

पदम् अर्थः / sense
append-only immutable append
update-in-place mutate stored events

English sense
Never edit past events. Correct with new compensating events so audit and replay stay honest.

Context / topic
Topic: immutability.

वृत्तमिति: ८-८-८-८।

श्लोकः ३ (अनुष्टुभ्)

aggregate सीमा घटनाजातेः ।
विश्वैकपङ्क्तिः न मापनम् ॥३॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
aggregate सीमा घटनाजातेः । विश्वैकपङ्क्तिः न मापनम् ॥३॥

Word-for-word

संस्कृतपदम् Word-for-word English
aggregate aggregate
सीमा boundary
घटनाजातेः of event family
विश्वैकपङ्क्तिः one global log for all
न मापनम् not scalable design

Gloss table

पदम् अर्थः / sense
aggregate consistency boundary
घटनाजातेः of event types

English sense
Group events by aggregate or stream key. One endless global unordered log is hard to reason about and scale.

Context / topic
Topic: stream/aggregate design.

वृत्तमिति: ८-८-८-८।

श्लोकः ४ (अनुष्टुभ्)

projection read model पृथक् ।
write model != query model ॥४॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
projection read model पृथक् । write model != query model ॥४॥

Word-for-word

संस्कृतपदम् Word-for-word English
projection projection
read read
model model
पृथक् separate
write write
model model
query query
model model

Gloss table

पदम् अर्थः / sense
projection read model build
CQRS-class separate read path

English sense
Build read models asynchronously from events. Queries should not scan the raw event log for every page view.

Context / topic
Topic: projections / CQRS-style reads.

वृत्तमिति: ८-८-८-८।

श्लोकः ५ (उपजाति)

snapshot + events after
replay वेगाय ।
पूर्णreplay नित्यं
मन्दः ॥५॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
snapshot + events after replay वेगाय । पूर्णreplay नित्यं मन्दः ॥५॥

Word-for-word

संस्कृतपदम् Word-for-word English
snapshot snapshot
events events
after after
replay replay
वेगाय for speed
पूर्णreplay full replay
नित्यम् always
मन्दः slow

Gloss table

पदम् अर्थः / sense
snapshot state checkpoint
replay rebuild from events

English sense
Periodic snapshots keep rebuilds fast. Replaying years of events on every boot does not scale.

Context / topic
Topic: snapshots for replay.

वृत्तमिति: एकादशाक्षराः पादाः।

श्लोकः ६ (अनुष्टुभ्)

schema evolution घटनासु कोषेण ।
योजनाकोषसन्धिः ॥६॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
schema evolution घटनासु कोषेण । योजनाकोषसन्धिः ॥६॥

Word-for-word

संस्कृतपदम् Word-for-word English
schema schema
evolution evolution
घटनासु in events
कोषेण with registry
योजनाकोषसन्धिः schema-registry link

Gloss table

पदम् अर्थः / sense
schema evolution event shape change
कोषेण via registry

English sense
Version event payloads with registry compatibility rules so old and new readers coexist.

Context / topic
Topic: event schemas. Links to schema registry (24 Oct).

वृत्तमिति: ८-८-८-८।

श्लोकः ७ (अनुष्टुभ्)

idempotent handlers अवश्याः ।
at-least-once द्विः मा दह ॥७॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
idempotent handlers अवश्याः । at-least-once द्विः मा दह ॥७॥

Word-for-word

संस्कृतपदम् Word-for-word English
idempotent idempotent
handlers handlers
अवश्याः required
at-least-once at-least-once
द्विः twice
मा दह do not burn

Gloss table

पदम् अर्थः / sense
idempotent handlers safe reapply
at-least-once delivery mode

English sense
Projections and reactors must tolerate duplicate delivery using event ids.

Context / topic
Topic: handlers. Links to idempotency keys.

वृत्तमिति: ८-८-८-८।

श्लोकः ८ (अनुष्टुभ्)

GDPR delete = tombstone + rewrite policy ।
अमिटलॉग् गोप्यतासंघर्षः ॥८॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
GDPR delete = tombstone + rewrite policy । अमिटलॉग् गोप्यतासंघर्षः ॥८॥

Word-for-word

संस्कृतपदम् Word-for-word English
GDPR GDPR
delete delete
tombstone tombstone
rewrite rewrite
policy policy
अमिटलॉग् unerasable log
गोप्यतासंघर्षः privacy conflict

Gloss table

पदम् अर्थः / sense
tombstone delete/marker events
अमिटलॉग् immutable forever log

English sense
True immutability collides with erasure rights. Plan crypto-shredding or controlled rewrite paths early.

Context / topic
Topic: privacy vs immutability.

वृत्तमिति: ८-८-८-८।

श्लोकः ९ (अनुष्टुभ्)

audit + debug = event log strength ।
बिना कारणं ES मा ॥९॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
audit + debug = event log strength । बिना कारणं ES मा ॥९॥

Word-for-word

संस्कृतपदम् Word-for-word English
audit audit
debug debug
event event
log log
strength strength
बिना कारणम् without reason
ES event sourcing
मा do not

Gloss table

पदम् अर्थः / sense
audit + debug forensics value
बिना कारणम् without need

English sense
Adopt event sourcing where history and replay matter. Do not use it as default CRUD fashion.

Context / topic
Topic: when not to use ES.

वृत्तमिति: ८-८-८-८।

श्लोकः १० (उपजाति)

अभिलेखतन्त्रं ledger सत्यम्
घटनास्रोतः app इतिहासः ।
CDC
db श्रुतिः ॥१०॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
अभिलेखतन्त्रं ledger सत्यम् घटनास्रोतः app इतिहासः । CDC db श्रुतिः ॥१०॥

Word-for-word

संस्कृतपदम् Word-for-word English
अभिलेखतन्त्रम् ledger treatise
ledger ledger
सत्यम् truth
घटनास्रोतः event source
app app
इतिहासः history
CDC CDC
db db
श्रुतिः hearing

Gloss table

पदम् अर्थः / sense
अभिलेखतन्त्रम् ledger treatise
CDC change capture

English sense
Ledgers business truth; event sourcing app domain history; CDC database row hearing. Related but not identical.

Context / topic
Topic: series distinctions.

सन्धिः: लेखः वित्तम्; स्रोतः डोमेन्; CDC सारणी

वृत्तमिति: एकादशाक्षराः पादाः।

श्लोकः ११ (अनुष्टुभ्)

append aggregate projection snapshot privacy पञ्चकम् ।
एभिर्घटनास्रोतः सत्यपङ्क्तिसमन्वितः ॥११॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
append aggregate projection snapshot privacy पञ्चकम् । एभिर्घटनास्रोतः सत्यपङ्क्तिसमन्वितः ॥११॥

Word-for-word

संस्कृतपदम् Word-for-word English
append append
aggregate aggregate
projection projection
snapshot snapshot
privacy privacy
पञ्चकम् five-set

Gloss table

पदम् अर्थः / sense
पञ्चकम् append aggregate projection snapshot privacy

English sense
Five limbs: immutable append, aggregate boundaries, read projections, snapshots for speed and an erasure plan.

Context / topic
Topic: checklist.

वृत्तमिति: ८-८-८-८।

श्लोकः १२ (अनुष्टुभ्)

इति घटनास्रोतधर्मसारः सत्यपङ्क्तिसमन्वितः ।
मितं इतिहासं क्रियायोग्यं तन्त्रधर्मः स उच्यते ॥१२॥
पदच्छेदः · Word-for-word · English (minimizable)

पदच्छेदः
इति घटनास्रोतधर्मसारः सत्यपङ्क्तिसमन्वितः । मितं इतिहासं क्रियायोग्यं तन्त्रधर्मः स उच्यते ॥१२॥

Word-for-word

संस्कृतपदम् Word-for-word English
इति thus
घटनास्रोतधर्मसारः event-sourcing essence
सत्यपङ्क्तिः truth log
मितम् measured
इतिहासम् history
क्रियायोग्यम् operable
तन्त्रधर्मः system dharma

Gloss table

पदम् अर्थः / sense
मितं इतिहासम् measured history
तन्त्रधर्मः platform dharma

English sense
Closing: keep history when it earns its keep; project for speed; never silently rewrite the past.

Context / topic
Topic: close.

उपसंहारन्यायः: घटनेन लिख; स्थित्या पठ; स्नैपैः त्वरय।

वृत्तमिति: ८-८-८-८।

श्लोकसूची / Verse index

१. Why ES
२. Append-only
३. Aggregates
४. Projections
५. Snapshots
६. Schemas
७. Idempotent handlers
८. Privacy
९. When not
१०. Ledger/CDC
११. Five limbs
१२. Close

सन्दर्भाः / References
  1. Prior: schema registry 2026-10-24; CDC 2026-10-13; ledger 2026-07-09; idempotency 2026-10-04.
  2. Domain: event sourcing patterns.
  3. English minimizable; Sanskrit-first.
  4. Style: no em dash; no Oxford comma in English clauses.