Redis Sorted Set Operationen (Sortierte Mengen)

RedisRedisBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden Sie grundlegende Redis Sorted Set Operationen (Operationen für sortierte Mengen) erkunden. Sie beginnen mit der Verbindung zum Redis-Server und verwenden den Befehl ZADD, um Elemente mit zugehörigen Scores (Bewertungen) zu einem Sorted Set hinzuzufügen. Dies beinhaltet das Hinzufügen neuer Elemente, das Aktualisieren vorhandener Element-Scores und das Verständnis der Ausgabe des Befehls.

Anschließend lernen Sie, wie Sie mit dem Befehl ZRANGE einen Bereich von Elementen aus dem Sorted Set anhand ihres Index abrufen, mit ZRANK den Rang eines Elements ermitteln, mit ZINCRBY den Score eines Elements erhöhen und schließlich mit ZREM Elemente aus dem Sorted Set entfernen.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL redis(("Redis")) -.-> redis/RedisGroup(["Redis"]) redis/RedisGroup -.-> redis/access_cli("Connect Using CLI") redis/RedisGroup -.-> redis/remove_key("Delete Single Key") redis/RedisGroup -.-> redis/increment_int("Increase Integer Value") redis/RedisGroup -.-> redis/fetch_range("Get List Range") subgraph Lab Skills redis/access_cli -.-> lab-552105{{"Redis Sorted Set Operationen (Sortierte Mengen)"}} redis/remove_key -.-> lab-552105{{"Redis Sorted Set Operationen (Sortierte Mengen)"}} redis/increment_int -.-> lab-552105{{"Redis Sorted Set Operationen (Sortierte Mengen)"}} redis/fetch_range -.-> lab-552105{{"Redis Sorted Set Operationen (Sortierte Mengen)"}} end

Hinzufügen von Elementen mit Scores mithilfe von ZADD

In diesem Schritt lernen Sie, wie Sie Elemente mit Scores zu einem Redis Sorted Set (sortierte Menge) mithilfe des Befehls ZADD hinzufügen. Sorted Sets sind eine Datenstruktur, die Elemente speichert, denen ein Score zugeordnet ist. Die Elemente werden nach ihren Scores geordnet, sodass Sie sie in sortierter Reihenfolge abrufen können.

Stellen wir zunächst eine Verbindung zum Redis-Server her. Öffnen Sie ein Terminal in der LabEx VM (virtuelle Maschine). Sie sollten sich bereits im Verzeichnis ~/project befinden. Stellen Sie nun mit dem Befehl redis-cli eine Verbindung zum Redis-Server her:

redis-cli

Sie sollten die Redis-Eingabeaufforderung sehen: 127.0.0.1:6379>.

Fügen wir nun einige Elemente mit Scores zu einem Sorted Set namens my_zset hinzu. Der Befehl ZADD hat die folgende Syntax:

ZADD key score member [score member ...]

Wobei:

  • key der Name des Sorted Set ist.
  • score der Score ist, der dem Element zugeordnet ist.
  • member das Element ist, das hinzugefügt werden soll.

Fügen wir my_zset drei Elemente hinzu: "apple" mit einem Score von 1, "banana" mit einem Score von 2 und "cherry" mit einem Score von 3.

ZADD my_zset 1 apple 2 banana 3 cherry

Sie sollten die folgende Ausgabe sehen:

(integer) 3

Dies zeigt an, dass drei Elemente zum Sorted Set hinzugefügt wurden.

Es ist wichtig, die Redis CLI nach diesem Schritt zu beenden, um sicherzustellen, dass die Befehle korrekt protokolliert werden. Um zu beenden, geben Sie Folgendes ein:

exit

Hinzufügen weiterer Elemente und Aktualisieren des Scores mit ZADD

In diesem Schritt fügen wir dem Sorted Set my_zset weitere Elemente hinzu und aktualisieren den Score eines vorhandenen Elements.

Stellen Sie zunächst erneut eine Verbindung zum Redis-Server her:

redis-cli

Fügen wir nun ein weiteres Element hinzu, "date" mit einem Score von 2.5:

ZADD my_zset 2.5 date

Sie sollten die folgende Ausgabe sehen:

(integer) 1

Dies zeigt an, dass ein Element zum Sorted Set hinzugefügt wurde.

Sie können auch den Score eines vorhandenen Elements mit ZADD aktualisieren. Aktualisieren wir den Score von "apple" auf 1.5:

ZADD my_zset 1.5 apple

Sie sollten die folgende Ausgabe sehen:

(integer) 0

Dies zeigt an, dass keine neuen Elemente hinzugefügt wurden (da "apple" bereits vorhanden war), aber der Score von "apple" aktualisiert wurde.

Denken Sie daran, die Redis CLI zu beenden:

exit

Abrufen eines Bereichs nach Index mit ZRANGE

Nachdem wir unser my_zset Sorted Set (sortierte Menge) gefüllt haben, lernen wir nun, wie wir Elemente innerhalb eines bestimmten Bereichs mit dem Befehl ZRANGE abrufen können.

Verbinden Sie sich mit dem Redis-Server:

redis-cli

Der Befehl ZRANGE ruft Elemente aus einem Sorted Set innerhalb eines bestimmten Indexbereichs ab. Die Syntax lautet wie folgt:

ZRANGE key start stop [WITHSCORES]

Wobei:

  • key der Name des Sorted Set ist.
  • start der Startindex (einschließlich) ist.
  • stop der Endindex (einschließlich) ist.
  • WITHSCORES (optional) die Scores der Elemente in die Ausgabe einschließt.

Um die ersten drei Elemente (Index 0 bis 2) aus my_zset abzurufen, verwenden Sie den folgenden Befehl:

ZRANGE my_zset 0 2

Sie sollten die folgende Ausgabe sehen, die die nach ihren Scores sortierten Elemente darstellt:

1) "apple"
2) "banana"
3) "date"

Um die Elemente zusammen mit ihren Scores abzurufen, verwenden Sie die Option WITHSCORES:

ZRANGE my_zset 0 2 WITHSCORES

Sie sollten die folgende Ausgabe sehen:

1) "apple"
2) "1.5"
3) "banana"
4) "2"
5) "date"
6) "2.5"

Beenden Sie die Redis CLI (Befehlszeilenschnittstelle):

exit

Abrufen des Elementrangs mit ZRANK

In diesem Schritt lernen Sie, wie Sie den Rang eines Elements innerhalb eines Sorted Set (sortierte Menge) mit dem Befehl ZRANK bestimmen. Der Rang stellt die Position des Elements in der sortierten Reihenfolge dar (beginnend bei 0 für den niedrigsten Score).

Verbinden Sie sich mit dem Redis-Server:

redis-cli

Der Befehl ZRANK hat die folgende Syntax:

ZRANK key member

Wobei:

  • key der Name des Sorted Set ist.
  • member das Element ist, für das Sie den Rang ermitteln möchten.

Um den Rang von "banana" in my_zset zu finden, verwenden Sie den folgenden Befehl:

ZRANK my_zset banana

Sie sollten die folgende Ausgabe sehen:

(integer) 1

Dies zeigt an, dass "banana" Rang 1 im Sorted Set hat.

Beenden Sie die Redis CLI (Befehlszeilenschnittstelle):

exit

Erhöhen des Scores mit ZINCRBY und Entfernen von Elementen mit ZREM

In diesem letzten Schritt lernen Sie, wie Sie den Score eines Elements mit ZINCRBY erhöhen und Elemente mit ZREM entfernen.

Verbinden Sie sich mit dem Redis-Server:

redis-cli

Der Befehl ZINCRBY erhöht den Score eines Members in einem Sorted Set (sortierte Menge). Die Syntax lautet:

ZINCRBY key increment member

Wobei:

  • key der Name des Sorted Set ist.
  • increment der Wert ist, um den der Score erhöht werden soll.
  • member das Element ist, dessen Score Sie erhöhen möchten.

Erhöhen wir den Score von "banana" um 0.5:

ZINCRBY my_zset 0.5 banana

Sie sollten die folgende Ausgabe sehen:

"2.5"

Dies zeigt an, dass der neue Score von "banana" 2.5 ist.

Der Befehl ZREM entfernt ein Member aus einem Sorted Set. Die Syntax lautet:

ZREM key member [member ...]

Wobei:

  • key der Name des Sorted Set ist.
  • member das Element ist, das Sie entfernen möchten.

Entfernen wir "banana" aus my_zset:

ZREM my_zset banana

Sie sollten die folgende Ausgabe sehen:

(integer) 1

Dies zeigt an, dass ein Element entfernt wurde.

Beenden Sie die Redis CLI (Befehlszeilenschnittstelle):

exit

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie grundlegende Redis Sorted Set (sortierte Menge) Operationen verwenden. Sie haben ZADD verwendet, um Elemente mit Scores hinzuzufügen, ZRANGE, um Bereiche von Elementen abzurufen, ZRANK, um den Rang eines Elements zu erhalten, ZINCRBY, um Scores zu erhöhen, und ZREM, um Elemente zu entfernen. Sie haben nun eine solide Grundlage für die effektive Verwaltung von Sorted Sets in Redis.