Church Cashbook Data Schema Manual
Indexing rationale, FY filtering, scaling notes, and stress-test findings.
Scaling notes
- Stress test confirmed operation to ~2.6M transactions (performance depends heavily on indexes and FY filtering).
- phpMyAdmin DELETE limits encountered in tests; prefer drop/recreate for heavy test resets.
- Archiving/partitioning can be considered later if required.
Indexing principles
- Primary access path is
church_id + tx_datefor most transaction queries. - Category-based indexes support budgets and variance reporting.
TODO: Once remaining DDL is pasted, we will document key indexes per table.