- Home
- Skills
- Williamzujkowski
- Cognitive Toolworks
- Database Redis Architect
database-redis-architect_skill
- Python
5
GitHub Stars
1
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill williamzujkowski/cognitive-toolworks --skill database-redis-architect- SKILL.md28.2 KB
Overview
This skill helps design and optimize Redis architectures for caching, session storage, real-time analytics, rate limiting, and high-availability deployments. It produces concrete recommendations for data structures, eviction policies, persistence (RDB/AOF/hybrid), and HA topologies (Sentinel vs Cluster). Use it to size, tune, and produce quick wins that reduce latency, memory use, and operational risk.
How this skill works
The skill inspects the application use case, access patterns (read/write ratio, TTLs, hit rate), data volume, Redis version, and deployment context (cloud vs self-hosted). It then maps use cases to Redis data structures and caching patterns, proposes eviction and persistence settings, and outputs a complete architecture including HA topology and performance tuning. If inputs are missing, it returns a concise TODO list of required information for accurate sizing.
When to use it
- Design a Redis caching layer for a web or API service needing sub-millisecond reads
- Choose Redis data structures for leaderboards, session storage, or streams
- Plan high availability and failover using Sentinel or Redis Cluster for given SLA
- Optimize memory usage and eviction policy for known key volume and hit rates
- Design rate limiting, queues, or real-time analytics using Redis primitives
Best practices
- Collect access patterns (read/write ratio, TTL, hit rate) and key counts before sizing
- Prefer Hashes for structured objects to save memory versus JSON strings
- Use cache-aside for most read-heavy workloads; write-through/behind only when needed
- Set maxmemory to ~70-80% of RAM and choose eviction policy that matches workload (allkeys-lru or allkeys-lfu)
- Enable AOF (appendfsync everysec) or hybrid RDB+AOF for production durability
- Use 3 Sentinels for simple HA and 6+ nodes (3 masters + 3 replicas) for Cluster sharding
Example use cases
- Cache-aside for user profiles: Hashes with per-user TTL and HGET/HSET access
- Rate limiting: INCR + EXPIRE or sorted-set sliding window for precise rolling limits
- Leaderboards: Sorted Sets (ZADD, ZRANGE) with periodic trimming
- Event processing: Redis Streams with consumer groups for durable message processing
- Session store: Strings or Hashes with strong TTL and optional persistence
FAQ
I will return a TODO checklist and provide generic sizing guidance; precise recommendations require estimates for keys, average key size, and throughput.
When should I pick Sentinel vs Cluster?
Use Sentinel for single-node HA when data fits on one host; choose Cluster when you need horizontal scaling and shard large datasets across masters.