Core principle: Good data system architecture balances reliability (correct operation under faults), scalability (handling growth gracefully), and maintainability (enabling productive change over time). Every architectural decision involves trade-offs between these concerns.
| Designing a new database/schema | 01-foundational-principles.md | | Normalization vs denormalization decisions | 02-data-modeling.md | | Need to understand OLTP vs OLAP | 03-storage-engines.md | | Slow queries, index selection | 04-indexing.md | | Planning for growth, read replicas | 05-scaling-patterns.md |
| Race conditions, deadlocks, isolation issues | 06-transactions-concurrency.md | | N+1 queries, ORM problems, application integration | 07-application-integration.md |
Da utilizzare durante la progettazione di database per applicazioni con un uso intensivo di dati, quando si prendono decisioni sugli schemi per le prestazioni, si sceglie tra normalizzazione e denormalizzazione, si selezionano strategie di archiviazione/indicizzazione, si pianifica la scalabilità o si valutano i compromessi OLTP e OLAP. Da utilizzare anche quando si riscontrano query N+1, problemi ORM o problemi di concorrenza. Fonte: ratacat/claude-skills.