Redis Caching & Messaging (Pub/Sub, Streams) · Pelajaran

Dasar-Dasar RedisJSON dan RedisGraph

Jelajahi cara menyimpan dan melakukan kueri pada dokumen JSON serta memanfaatkan kemampuan basis data graf dalam Redis.

Pelajaran 3 dari 411 langkah

Dasar-Dasar RedisJSON dan RedisGraph adalah pelajaran Redis Caching & Messaging (Pub/Sub, Streams) gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Redis Caching & Messaging (Pub/Sub, Streams), dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Redis Caching & Messaging (Pub/Sub, Streams) mencakup 4 pelajaran total.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

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!

Gratis untuk memulai

Belajar Redis Caching & Messaging (Pub/Sub, Streams) dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
12
Pelajaran
48

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Dasar-Dasar RedisJSON dan RedisGraph” gratis?

Ya — teks lengkap “Dasar-Dasar RedisJSON dan RedisGraph” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Redis Caching & Messaging (Pub/Sub, Streams), upgrade ke CoddyKit PRO. Kursus Redis Caching & Messaging (Pub/Sub, Streams) mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Dasar-Dasar RedisJSON dan RedisGraph”?

Jelajahi cara menyimpan dan melakukan kueri pada dokumen JSON serta memanfaatkan kemampuan basis data graf dalam Redis. Kamu berlatih Redis Caching & Messaging (Pub/Sub, Streams) dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Redis Caching & Messaging (Pub/Sub, Streams)?

Tidak diperlukan pengalaman sebelumnya. Redis Caching & Messaging (Pub/Sub, Streams) di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Dasar-Dasar RedisJSON dan RedisGraph” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Redis Caching & Messaging (Pub/Sub, Streams) ini?

Ya. Setiap pelajaran Redis Caching & Messaging (Pub/Sub, Streams) menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Gambaran Umum Modul Redis
  2. RediSearch untuk Pencarian Teks Lengkap
  3. Dasar-Dasar RedisJSON dan RedisGraph
  4. Rangkaian Waktu dengan RedisTimeSeries
← Kembali ke Redis Caching & Messaging (Pub/Sub, Streams)