Schema Design
We use partitioning to keep tables manageable. Transaction tables are partitioned by month.
Indexing Strategy
Composite indexes on (user_id, created_at) for common queries. Covering indexes to avoid table lookups.
Connection Pooling
We use PgBouncer-style pooling for MySQL to handle thousands of concurrent connections.