data-storage

Determines optimal database technology and scaling architecture from data shape, access patterns, and throughput requirements.

42|2|Updated Jun 1, 2026
One-click install
npx skills add https://github.com/proyecto26/system-design-skills --skill data-storage-proyecto26
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: data-storage
Source: https://github.com/proyecto26/system-design-skills/tree/main/skills/data-storage
Command: npx skills add https://github.com/proyecto26/system-design-skills --skill data-storage-proyecto26

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This skill resolves the complexity of choosing and scaling database systems, preventing common pitfalls like premature sharding, hot partitions, and data loss due to replication lag.

Core Features & Use Cases

  • Storage Selection: Provides a decision framework to choose between SQL, NoSQL, Key-Value, Wide-column, and Graph databases based on data shape and access patterns.
  • Scaling Strategy: Guides the implementation of indexing, read replicas, federation, and sharding only when performance metrics demand it.
  • Use Case: When designing a high-traffic social media feed, use this skill to determine if a relational database is sufficient or if a wide-column store is required to handle write-heavy ingestion.

Quick Start

Use the data-storage skill to evaluate whether a relational database or a NoSQL store is appropriate for a system requiring 5000 writes per second and complex join queries.

Frequently Asked Questions about data-storage

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose between SQL and NoSQL databases for high-throughput applications?

Choose SQL for complex joins and relational data, or NoSQL variants like wide-column stores for write-heavy ingestion. Database selection depends on evaluating data shape, access patterns, and throughput requirements.

When should I implement sharding in a distributed database?

Implement sharding only when performance metrics demand horizontal scalability. Premature sharding causes hot partitions, so apply indexing, read replicas, and federation first before partitioning your distributed database.

What database architecture handles 5000 writes per second with complex queries?

A database architecture handling 5000 writes per second with complex queries requires trade-off analysis. Evaluate whether a relational database suffices or if a wide-column store is needed for write-heavy ingestion.

How does replication lag affect data consistency in scalable storage systems?

Replication lag causes data loss and consistency issues in scalable storage systems. Systematic trade-off analysis evaluates requirements for high availability, consistency, and horizontal scalability to mitigate distributed state risks.

Do I need a graph database or a key-value store for my access patterns?

A graph database suits interconnected data access patterns, while a key-value store optimizes simple lookups. Storage selection frameworks match database technology to data shape and throughput requirements.