redis-core

por redis

Guía central de modelado de Redis: elige la estructura de datos adecuada (String, Hash, List, Set, Sorted Set, JSON, Stream, Vector Set) y usa un…

npx skills add https://github.com/redis/agent-skills --skill redis-core

Redis Core

Foundational guidance for modeling data in Redis. Covers data-type selection and key-name conventions — the two decisions that most directly drive memory, performance, and maintainability.

When to apply

  • Caching objects, sessions, or per-user state.
  • Counters, leaderboards, recent-items lists, unique-membership sets.
  • Reviewing or refactoring Redis key names.
  • Deciding between a Redis Hash and a JSON document for an entity.

1. Choose the right data structure

Pick the type that matches the access pattern, not just the shape of the data.

Use caseRecommended typeWhy
Simple values, countersStringAtomic INCR/DECR, SET/GET
Object with independently updated fieldsHashPer-field reads/writes, no whole-object rewrite
Queue, recent-N itemsListO(1) push/pop at ends
Unique items, membership checksSetO(1) SADD/SISMEMBER/SCARD
Rankings, score-based rangesSorted SetScore-ordered; ZADD/ZRANGE/ZRANK
Nested / hierarchical dataJSONPath-level updates, nested arrays, RQE indexing
Event log, fan-out messagingStreamPersistent, consumer groups
Vector similarityVector SetNative vector storage with HNSW

Common anti-pattern: stuffing a flat object into a serialized string. Updating one field means fetch + parse + mutate + rewrite. Use a Hash instead.

See references/choose-data-structure.md for full rationale and Python/Java examples.

2. Use consistent key names

Use colon-separated segments with a stable hierarchy:

{entity}:{id}:{attribute}
user:1001:profile
user:1001:settings
order:2024:items
session:abc123
article:987:likes
game:space-invaders:leaderboard

Rules of thumb:

  • Lowercase, colon-separated. No spaces, no mixed casing (User_1001_Profile is bad).
  • Keep keys short but readable — keys live in memory and appear in every command.
  • Don't use full URLs or long strings as keys. Extract a short identifier, or use a hash digest of the URL.
  • Prefix for multi-tenancy (tenant:42:user:7:cart) so scans and ACLs can target a tenant cleanly.
  • Be consistent. Pick one convention per service and apply it across all keys.

See references/key-naming.md for cleanup examples and edge cases.

References

Más skills de redis

docs-sync
redis
Analizar la implementación y configuración de la rama master para encontrar documentación faltante, incorrecta o desactualizada en docs/, README.md y READMEs por paquete. Usar…
redis-query-engine
redis
Orientación sobre Redis Query Engine (RQE) que cubre diseño de esquemas FT.CREATE, selección de tipos de campo (TEXT, TAG, NUMERIC, GEO, GEOSHAPE, VECTOR), sintaxis de consultas DIALECT 2,…
redis-search
redis
Orientación sobre Redis Search que cubre diseño de esquemas FT.CREATE, selección de tipos de campo (TEXT, TAG, NUMERIC, GEO, GEOSHAPE, VECTOR, JSON path), sintaxis de consulta DIALECT 2,…
redis-security
redis
Guía de seguridad de Redis que cubre autenticación (requirepass y usuarios ACL), TLS, control de acceso basado en ACL con mínimo privilegio, restricción de exposición de red mediante…
redis-semantic-cache
redis
Guía de Redis LangCache para el almacenamiento en caché semántico de respuestas de LLM en Redis Cloud: llamadas a search/set mediante el SDK o la API REST, ajuste del umbral de similitud,…
redis-vector-search
redis
Guía de búsqueda vectorial en Redis que cubre la elección del algoritmo HNSW vs FLAT, configuración del índice vectorial (dimensiones, métrica de distancia, tipo de datos), búsqueda híbrida filtrada…
bump-test-image
redis
Actualiza la imagen de prueba docker de Redis predeterminada (redislabs/client-libs-test) en el DEFAULT_DOCKER_CONFIG compartido y la matriz de CI, luego haz force-push de los…
i18n
redis
Convenciones de internacionalización para la interfaz de RedisInsight (i18next). Úsese al añadir o modificar cadenas visibles para el usuario en redisinsight/ui/**, al editar el…