Partycjonuj księgę (ledger) po koncie i czasie, trzymaj świeże dane na gorąco, a stare na zimno, i traktuj wiersze jako niezmienną księgę append-only — tak aby historia jednego konta była małym, indeksowanym wycinkiem, nigdy skanem miliardów wierszy. Wzorzec dostępu to zawsze „jedno konto, zakres dat", więc partycjonuj tak, by mu odpowiadał.
Architektura
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)
