ledger account आणि time नुसार partition करा, अलीकडील data hot आणि जुना data cold ठेवा, आणि rows ला append-only immutable ledger म्हणून वागवा — जेणेकरून एका account चा history एक लहान, indexed slice असतो, कधीही अब्जावधी rows चा scan नव्हे. access pattern नेहमी "एक account, एक date range" असते, म्हणून त्याच्याशी जुळण्यासाठी partition करा.
आर्किटेक्चर
Write ─▶ Ledger table (append-only, immutable)
partition by (account_hash, month)
│
┌────────┴─────────┐
HOT tier COLD tier
last 3 mo older
Postgres/SSD S3/Parquet, Glacier
│ │
index-seek keyset paginate ──▶ API (account+range)
