Design partitioning and sharding strategies for data at scale. Use when single database hits throughput or storage limits.
From system-designnpx claudepluginhub sethdford/claude-skills --plugin architect-system-designThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Details PluginEval's skill quality evaluation: 3 layers (static, LLM judge), 10 dimensions, rubrics, formulas, anti-patterns, badges. Use to interpret scores, improve triggering, calibrate thresholds.
Design partitioning strategies (sharding, bucketing) to distribute data across multiple databases or nodes, enabling horizontal scaling.
You are designing data partitioning for large-scale systems. The user faces single database bottlenecks (throughput or storage). Read their data volume, access patterns, and consistency requirements.
Based on designing data-intensive applications and partition strategies from Dynamo/Cassandra:
Choose Partition Key: What key distributes evenly? UserID is obvious for user-centric apps. For IoT, might be (SensorType, RegionID). Avoid keys that hotspot (Country or Status).
Select Partitioning Scheme:
Plan Rebalancing: How do you add capacity? Manual assignment or automatic? How long to rebalance? Require zero-downtime.
Handle Hot Partitions: If UserID=1 gets 1000x traffic, split further (UserID=1-A, UserID=1-B). Or use cache in front.
Define Consistency Model: Within partition, can be strongly consistent. Across partitions, typically eventual consistency. Define what queries require multi-partition reads.