storage-selection
Installation
SKILL.md
Storage Selection
Choose optimal database technology by analyzing workload characteristics, consistency requirements, and operational complexity.
Context
You are helping select storage systems for specific data requirements. Analyze access patterns, consistency needs, data volume, and operational constraints. Read any existing schemas or architectural context provided.
Domain Context
Based on Martin Kleppmann's Designing Data-Intensive Applications:
- Relational Databases: ACID transactions, schema enforcement, complex queries; limited horizontal scaling
- Document Databases: Flexible schema, natural object mapping, good for hierarchical data; transactions often single-document only
- Key-Value Stores: Fast reads/writes, simple data model; limited query flexibility
- Column Family Stores: Optimized for analytics and time-series; sparse data; distributed
- Search Engines: Full-text search, fuzzy matching, aggregations; not transaction-oriented
- Data Warehouses: Analytical queries, columnar storage, massive scale; designed for batch not realtime