0Pricing
Redis Caching & Messaging (Pub/Sub, Streams) · Leçon

Notions fondamentales de RedisJSON et RedisGraph

Découvrez comment stocker et interroger des documents JSON et exploiter les capacités de base de données graphe de Redis.

Notions fondamentales de RedisJSON et RedisGraph est une leçon Redis Caching & Messaging (Pub/Sub, Streams) gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Redis Caching & Messaging (Pub/Sub, Streams), et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Redis Caching & Messaging (Pub/Sub, Streams) comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Unlock New Data Types

Redis is incredibly versatile, but sometimes you need more specialized data handling. That's where Redis Modules come in!

These modules extend Redis's core functionality, allowing it to act as a document database, a graph database, and much more.

Introducing RedisJSON

RedisJSON is a module that lets you store, update, and retrieve JSON documents directly within Redis. This is great for managing semi-structured data like user profiles, product catalogs, or configuration settings.

  • Native JSON support: Store complex JSON objects.
  • Atomic operations: Update parts of a JSON document efficiently.
  • Powerful querying: Retrieve data using JSONPath expressions.

Storing JSON with JSON.SET

To store a JSON document, we use the JSON.SET command. You provide a key, a path (usually $ for the root), and the JSON string.

Try adding a simple user profile:

JSON.SET user:profile:1 $ '{"name": "Emma", "age": 28, "city": "London"}'

Retrieving JSON with JSON.GET

The JSON.GET command retrieves your JSON. You can get the entire document or specify a JSONPath to fetch only specific fields.

Let's get the full profile and then just Emma's name:

JSON.GET user:profile:1
JSON.GET user:profile:1 $.name

Updating JSON Fields

One of RedisJSON's strengths is updating specific parts of a document without fetching and rewriting the whole thing. Use JSON.SET with a precise path.

Update Emma's age and add a new hobby:

JSON.SET user:profile:1 $.age 29
JSON.SET user:profile:1 $.hobbies '["reading", "hiking"]'
JSON.GET user:profile:1

Introducing RedisGraph

RedisGraph is another powerful module that turns Redis into a graph database. Graph databases are excellent for modeling relationships between data, like social networks, recommendation engines, or fraud detection.

Instead of tables, you work with nodes (entities) and edges (relationships).

Graph Concepts

In RedisGraph, you'll use Cypher, a declarative graph query language, to interact with your data.

  • Nodes: Represent entities (e.g., Person, Product).
  • Labels: Categorize nodes (e.g., :Person).
  • Properties: Attributes of nodes/edges (e.g., name: 'Bob').
  • Edges: Represent relationships (e.g., -[:FRIENDS_WITH]->).

Creating Graph Data

The GRAPH.QUERY command lets you execute Cypher queries. Let's create a simple social graph with two people and a 'FRIENDS_WITH' relationship.

Notice the graph name 'social' is used to identify our graph.

GRAPH.QUERY social "CREATE (:Person {name: 'Liam'})-[:FRIENDS_WITH]->(:Person {name: 'Olivia'})"

Querying Graph Relationships

You can query the graph to find patterns and relationships. The MATCH clause finds the pattern, and RETURN specifies what data to retrieve.

Find who Liam is friends with:

GRAPH.QUERY social "MATCH (p:Person {name: 'Liam'})-[:FRIENDS_WITH]->(f:Person) RETURN p.name, f.name"

RedisJSON Path Challenge

You have a RedisJSON document stored under the key product:details:123. The document looks like this:

{
  "name": "Wireless Earbuds",
  "specs": {
    "color": "Black",
    "battery_life": "8 hours",
    "features": ["Noise Cancelling", "Waterproof"]
  }
}

Which command correctly retrieves the 'Noise Cancelling' feature?

Recap: JSON & Graphs

You've explored how RedisJSON enables efficient storage and manipulation of JSON documents using commands like JSON.SET and JSON.GET with JSONPath.

You also learned about RedisGraph, a powerful module for building and querying graph structures using Cypher, perfect for modeling relationships between data.

These modules significantly expand Redis's capabilities, letting it tackle a broader range of data modeling challenges!

Questions Fréquemment Posées

La leçon « Notions fondamentales de RedisJSON et RedisGraph » est-elle gratuite ?

Oui — le texte complet de « Notions fondamentales de RedisJSON et RedisGraph » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Redis Caching & Messaging (Pub/Sub, Streams), passe à CoddyKit PRO. Le cours Redis Caching & Messaging (Pub/Sub, Streams) comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Notions fondamentales de RedisJSON et RedisGraph » ?

Découvrez comment stocker et interroger des documents JSON et exploiter les capacités de base de données graphe de Redis. Tu pratiques Redis Caching & Messaging (Pub/Sub, Streams) avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Redis Caching & Messaging (Pub/Sub, Streams) ?

Aucune expérience préalable n'est requise. Redis Caching & Messaging (Pub/Sub, Streams) sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.

Combien de temps prend la leçon « Notions fondamentales de RedisJSON et RedisGraph » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Redis Caching & Messaging (Pub/Sub, Streams) ?

Oui. Chaque leçon Redis Caching & Messaging (Pub/Sub, Streams) inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Présentation des modules Redis
  2. RediSearch pour la recherche en texte intégral
  3. Notions fondamentales de RedisJSON et RedisGraph
  4. Séries temporelles avec RedisTimeSeries
← Retour à Redis Caching & Messaging (Pub/Sub, Streams)