Redis: cachelagring och meddelanden (Pub/Sub, Streams) · Lektion

Grunderna i RedisJSON och RedisGraph

Utforska hur ni lagrar och frågar JSON-dokument samt utnyttjar funktioner för grafdatabaser i Redis.

Lektion 3 av 411 steg

Grunderna i RedisJSON och RedisGraph är en gratis lektion i Redis: cachelagring och meddelanden (Pub/Sub, Streams) på CoddyKit. Detta är lektion 3 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Redis: cachelagring och meddelanden (Pub/Sub, Streams), och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Redis: cachelagring och meddelanden (Pub/Sub, Streams) innehåller totalt 4 lektioner.

Lås upp nya datatyper

Redis är mycket mångsidigt, men ibland behöver du mer specialiserad datahantering. Det är där Redis Modules kommer in!

Dessa moduler utökar Redis kärnfunktioner och gör det möjligt att använda Redis som dokumentdatabas, grafdatabas och mycket mer.

Introduktion till RedisJSON

RedisJSON är en modul som låter dig lagra, uppdatera och hämta JSON-dokument direkt i Redis. Den är utmärkt för att hantera halvstrukturerade data, till exempel användarprofiler, produktkataloger eller konfigurationsinställningar.

  • Inbyggt JSON-stöd: Lagra komplexa JSON-objekt.
  • Atomära operationer: Uppdatera delar av ett JSON-dokument effektivt.
  • Kraftfulla sökningar: Hämta data med JSONPath-uttryck.

Lagra JSON med JSON.SET

För att lagra ett JSON-dokument använder vi kommandot JSON.SET. Du anger en nyckel, en sökväg (vanligtvis $ för roten) och JSON-strängen.

Försök lägga till en enkel användarprofil:

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

Hämta JSON med JSON.GET

Kommandot JSON.GET hämtar din JSON. Du kan hämta hela dokumentet eller ange en JSONPath för att bara hämta specifika fält.

Vi hämtar hela profilen och sedan bara Emmas namn:

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

Uppdatera JSON-fält

En av RedisJSONs styrkor är att du kan uppdatera specifika delar av ett dokument utan att hämta och skriva om hela dokumentet. Använd JSON.SET med en exakt sökväg.

Uppdatera Emmas ålder och lägg till en ny hobby:

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

Introduktion till RedisGraph

RedisGraph är en annan kraftfull modul som omvandlar Redis till en grafdatabas. Grafdatabaser är utmärkta för att modellera relationer mellan data, till exempel sociala nätverk, rekommendationsmotorer eller bedrägeridetektering.

I stället för tabeller arbetar du med noder (entiteter) och kanter (relationer).

Grafkoncept

I RedisGraph använder du Cypher, ett deklarativt frågespråk för grafer, för att interagera med dina data.

  • Noder: Representerar entiteter (till exempel Person, Product).
  • Etiketter: Kategoriserar noder (till exempel :Person).
  • Egenskaper: Attribut hos noder och kanter (till exempel name: 'Bob').
  • Kanter: Representerar relationer (till exempel -[:FRIENDS_WITH]->).

Skapa grafdata

Med kommandot GRAPH.QUERY kan du köra Cypher-frågor. Vi skapar en enkel social graf med två personer och relationen 'FRIENDS_WITH'.

Observera att grafnamnet 'social' används för att identifiera vår graf.

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

Fråga efter grafrelationer

Du kan ställa frågor mot grafen för att hitta mönster och relationer. Satsen MATCH hittar mönstret och RETURN anger vilka data som ska hämtas.

Ta reda på vilka Liam är vän med:

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

Utmaning: RedisJSON-sökväg

Du har ett RedisJSON-dokument lagrat under nyckeln product:details:123. Dokumentet ser ut så här:

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

Vilket kommando hämtar funktionen 'Noise Cancelling' korrekt?

Sammanfattning: JSON och grafer

Du har utforskat hur RedisJSON möjliggör effektiv lagring och hantering av JSON-dokument med kommandon som JSON.SET och JSON.GET tillsammans med JSONPath.

Du har också lärt dig om RedisGraph, en kraftfull modul för att skapa och fråga grafstrukturer med Cypher, vilket passar utmärkt för att modellera relationer mellan data.

Dessa moduler utökar Redis funktioner avsevärt och gör det möjligt att hantera ett bredare spektrum av utmaningar inom datamodellering!

Gratis att börja

Lär dig Redis: cachelagring och meddelanden (Pub/Sub, Streams) med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Grunderna i RedisJSON och RedisGraph” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Redis: cachelagring och meddelanden (Pub/Sub, Streams), inklusive ”Grunderna i RedisJSON och RedisGraph”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Redis: cachelagring och meddelanden (Pub/Sub, Streams) innehåller totalt 4 lektioner.

Vad lär jag mig i ”Grunderna i RedisJSON och RedisGraph”?

Utforska hur ni lagrar och frågar JSON-dokument samt utnyttjar funktioner för grafdatabaser i Redis. Ni övar på Redis: cachelagring och meddelanden (Pub/Sub, Streams) med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Redis: cachelagring och meddelanden (Pub/Sub, Streams)?

Du behöver inga förkunskaper. Utbildningen i Redis: cachelagring och meddelanden (Pub/Sub, Streams) på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 3 av 4.

Hur lång tid tar lektionen ”Grunderna i RedisJSON och RedisGraph”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Redis: cachelagring och meddelanden (Pub/Sub, Streams)-lektionen?

Ja. Varje Redis: cachelagring och meddelanden (Pub/Sub, Streams)-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Översikt över Redis Modules
  2. RediSearch för fulltextsökning
  3. Grunderna i RedisJSON och RedisGraph
  4. Tidsserier med RedisTimeSeries
← Tillbaka till Redis: cachelagring och meddelanden (Pub/Sub, Streams)