Manager, Developer Education
Redis ist ein Open-Source-, In-Memory-Datenspeicher mit Schlüsselwerte-Datenstruktur. Sortierte Sets in Redis sind ein Datentyp, der den Sets ähnelt. Beide sind Gruppen von Zeichenfolgen, die keine Wiederholungen zulassen. Der Unterschied besteht darin, dass in einem sortierten Set jedes Mitglied mit einem Score verknüpft ist, wodurch diese vom kleinsten bis zum größten Score sortiert werden können. So wie bei Sets darf jedes Mitglied eines sortieren Sets in diesem nur einmalig vorkommen, wobei mehrere Mitglieder den gleichen Score haben können.
Dieses Tutorial erklärt, wie man sortierte Sets erstellt, Ihre Mitglieder abruft und entfernt und wie man neue sortierte Sets aus bestehenden Sets erstellen kann.
Dieser Leitfaden ist wie ein Spickzettel mit eigenständigen Beispielen geschrieben. Sie können beliebig zu jedem Abschnitt springen, der zu der Aufgabe passt, die Sie ausführen möchten.
Die in diesem Leitfaden verwendeten Befehle wurden auf einem Ubuntu 18.04-Server mit der Redis-Version 4.0.9 getestet. Um eine ähnliche Umgebung einzurichten, können Sie Schritt 1 unseres Leitfadens Installieren und Sichern von Redis unter Ubuntu 18.04 folgen. Wir zeigen, wie diese Befehle sich verhalten, wenn sie mit redis-cli
, der Befehlszeilenschnittstelle von Redis, angewendet werden. Beachten Sie, dass bei der Anwendung einer anderen Redis-Schnittstelle – z. B. Redli – die genaue Ausgabe bestimmter Befehle abweichen kann.
Alternativ können Sie ein verwaltetes Exemplar einer Redis-Datenbank bereitstellen, um diese Befehle zu testen. Beachten Sie jedoch, dass abhängig vom Kontrollniveau, das Ihr Datenbankanbieter erlaubt, einige Befehle in diesem Leitfaden nicht wie beschrieben funktionieren könnten. Um eine von DigitalOcean verwaltete Datenbank bereitzustellen, folgen Sie bitte unserer Produktdokumentation über verwaltete Datenbanken. Dann müssen Sie entweder Redli installieren oder einen TLS-Tunnel einrichten, um sich mit der verwalteten Datenbank über TLS zu verbinden.
Um ein sortiertes Set zu erstellen, verwenden Sie den Befehl zadd
. zadd
akzeptiert als Argumente den Namen des Schlüssels, der das sortierte Set speichert, gefolgt vom Score des Mitglieds, das Sie hinzufügen, sowie dem Wert des Mitglieds selbst. Der folgende Befehl erstellt den Schlüssel eines sortierten Sets namens faveGuitarists
mit einem Mitglied, "Joe Pass"
, das einen Score von 1
hat:
- zadd faveGuitarists 1 "Joe Pass"
zadd
gibt eine ganze Zahl (Integer) aus, die anzeigt, wie viele Mitglieder dem sortierten Set hinzugefügt wurden, wenn es erfolgreich erstellt wurde.
Output(integer) 1
Mit zadd
können Sie einem sortierten Set mehr als ein Mitglied hinzufügen. Beachten Sie, dass deren Scores nicht sequenziell sein müssen. Zwischen den Scores kann es Lücken geben und mehrere Mitglieder aus demselben sortierten Set können den gleichen Score haben:
- zadd faveGuitarists 4 "Stephen Malkmus" 2 "Rosetta Tharpe" 3 "Bola Sete" 3 "Doug Martsch" 8 "Elizabeth Cotten" 12 "Nancy Wilson" 4 "Memphis Minnie" 12 "Michael Houser"
Output(integer) 8
zadd
kann die folgenden Optionen akzeptieren, die Sie nach dem Schlüsselnamen und vor dem ersten Score eines Mitglieds eingeben müssen:
NX
oder XX
: Diese Optionen haben gegensätzliche Effekte, daher können Sie nur eine davon in eine zadd
-Operation einfügen:
NX
weist zadd
an, die bestehenden Mitglieder nicht zu aktualisieren. Mit dieser Option fügt zadd
nur neue Elemente hinzu.XX
weist zadd
an, nur bestehende Elemente zu aktualisieren. Mit dieser Option fügt zadd
niemals neue Mitglieder hinzu.CH
: Normalerweise gibt zadd
nur die Anzahl der neuen Elemente aus, die dem sortierten Set hinzugefügt werden. Doch mit dieser Option gibt zadd
die Anzahl der geänderten Elemente aus. Dazu gehören neu hinzugefügte Mitglieder sowie Mitglieder, deren Scores geändert wurden.INCR
: Führt dazu, dass der Befehl den Score-Wert des Mitglieds inkrementiert. Wenn das Mitglied noch nicht existiert, fügt der Befehl es mit dem Inkrement als Score in das sortierte Set ein, so als wäre sein ursprünglicher Score 0
. Mit INCR
gibt zadd
bei erfolgreicher Ausführung den neuen Score des Mitglieds aus. Beachten Sie, dass Sie mit dieser Option jeweils nur ein Score/Mitglied-Paar einbeziehen können.Statt INCR
mit zadd
einzugeben, können Sie stattdessen den Befehl zincrby
verwenden, der sich genauso verhält. Statt so wie zadd
dem Mitglied des sortierten Sets den durch den Score-Wert angezeigten Wert zu geben, inkrementiert er den Score des Mitglieds auf diesen Wert. Beispiel: Der folgende Befehl inkrementiert den Score des Mitglieds "Stephen Malkmus"
, der ursprünglich 4
war, um 5
auf 9
.
- zincrby faveGuitarists 5 "Stephen Malkmus"
Output"9"
So wie bei der zadd
-Befehlsoption INCR
wird zincrby
, falls das angegebene Mitglied nicht existiert, es mit dem inkrementellen Wert als seinen Score kreieren.
Die grundlegendste Möglichkeit, die in einem sortierten Set enthaltenen Mitglieder abzurufen, ist die Verwendung des Befehls zrange
. Dieser Befehl akzeptiert als Argumente den Namen des Schlüssels, dessen Mitglieder Sie abrufen möchten und eine Reihe von darin enthaltenen Mitgliedern. Die Reihe ist durch zwei Zahlen definiert, die nullbasierte Indexe repräsentieren. Das bedeutet, dass 0
das erste Mitglied im sortierten Set (oder das Mitglied mit dem niedrigsten Score) repräsentiert, 1
repräsentiert das nächste, und so fort.
Das folgende Beispiel gibt die ersten vier Mitglieder aus dem im vorherigen Abschnitt erstellten Set faveGuitarists
aus:
- zrange faveGuitarists 0 3
Output1) "Joe Pass"
2) "Rosetta Tharpe"
3) "Bola Sete"
4) "Doug Martsch"
Beachten Sie: Falls das sortierte Set, das Sie an zrange
übergeben, zwei oder mehr Elemente hat, die den gleichen Score teilen, werden diese Elemente in lexikografischer oder alphabetischer Reihenfolge sortiert.
Die Start- und Stopp-Indizes können auch negative Zahlen sein, wobei -1
das letzte Mitglied repräsentiert, -2
das vorletzte Mitglied, und so fort:
- zrange faveGuitarists -5 -2
Output1) "Memphis Minnie"
2) "Elizabeth Cotten"
3) "Stephen Malkmus"
4) "Michael Houser"
zrange
akzeptiert zudem das Argument WITHSCORES
. Wenn es enthalten ist, gibt es auch die Scores der Mitglieder aus:
- zrange faveGuitarists 5 6 WITHSCORES
Output1) "Elizabeth Cotten"
2) "8"
3) "Stephen Malkmus"
4) "9"
zrange
kann eine Reihe von Mitgliedern nur in aufsteigender numerischer Reihenfolge ausgeben. Um das umzukehren und eine Reihe in absteigender Reihenfolge auszugeben, müssen Sie den Befehl zrevrange
verwenden. Stellen Sie sich diesen Befehl als vorübergehende Umkehrung der Reihenfolge des gegebenen sortierten Sets vor der Ausgabe der Mitglieder vor, die in den angegebenen Bereich fallen. Bei zrevrange
repräsentiert 0
das letzte im Schlüssel enthaltene Mitglied, 1
das vorletzte, und so fort:
- zrevrange faveGuitarists 0 5
Output1) "Nancy Wilson"
2) "Michael Houser"
3) "Stephen Malkmus"
4) "Elizabeth Cotten"
5) "Memphis Minnie"
6) "Doug Martsch"
zrevrange
akzeptiert auch die Option WITHSCORES
.
Mit dem Befehl zrangebyscore
können Sie eine Reihe von Mitgliedern auf der Grundlage ihrer Scores ausgeben. Im folgenden Beispiel gibt der Befehl jedes Mitglied, das im Schlüssel faveGuitarists
enthalten ist und einen Score von 2, 3 oder 4 hat, aus:
- zrangebyscore faveGuitarists 2 4
Output1) "Rosetta Tharpe"
2) "Bola Sete"
3) "Doug Martsch"
4) "Memphis Minnie"
In diesem Beispiel ist die Reihe integrativ. Das bedeutet, dass sie Mitglieder mit Scores von 2 oder 4 ausgibt. Sie können jedes Ende der Reihe ausschließen, indem Sie eine offene Klammer davorsetzen ((
). Das folgende Beispiel gibt jedes Mitglied mit einem Score, der größer oder gleich 2
, jedoch kleiner als 4
ist, aus:
- zrangebyscore faveGuitarists 2 (4
Output1) "Rosetta Tharpe"
2) "Bola Sete"
3) "Doug Martsch"
So wie bei zrange
akzeptiert zrangebyscore
das Argument WITHSCORES
. Außerdem akzeptiert es die Option LIMIT
, die Sie verwenden können, um nur eine Auswahl von Elementen aus der Ausgabe von zrangebyscore
abzurufen. Diese Option akzeptiert ein Offset, das das erste Mitglied in der Reihe markiert, die der Befehl zurückgibt, sowie einen Zählstand, der festlegt, wie viele Mitglieder der Befehl insgesamt ausgibt. Der folgende Befehl z. B. konzentriert sich auf die ersten sechs Mitglieder des sortierten Sets faveGuitarists
, gibt aber nur 3 dieser Mitglieder aus, beginnend mit dem zweiten Mitglied in der Reihe, repräsentiert durch 1
:
- zrangebyscore faveGuitarists 0 5 LIMIT 1 3
Output1) "Rosetta Tharpe"
2) "Bola Sete"
3) "Doug Martsch"
Der Befehl zrevrangebyscore
gibt eine umgekehrte Reihe von Mitgliedern auf der Grundlage ihrer Scores aus. Der folgende Befehl gibt jedes Mitglied des Sets mit einem Score zwischen 10 und 6 aus:
- zrevrangebyscore faveGuitarists 10 6
Output1) "Stephen Malkmus"
2) "Elizabeth Cotten"
So wie bei zrangebyscore
kann zrevrangebyscore
sowohl die Option WITHSCORES
als auch die Option LIMIT
akzeptieren. Außerdem können Sie jedes Ende der Reihe ausschließen, indem Sie vor dieses eine offene Klammer setzen.
Es kann vorkommen, dass alle Mitglieder in einem sortierten Set den gleichen Score haben. In einem solchen Fall können Sie redis zwingen, mit dem Befehl zrangebylex
eine Reihe von Elementen, die in lexikografischer oder in alphabetischer Reihenfolge sortiert sind, auszugeben. Um diesen Befehl auszuprobieren, führen Sie den folgenden zadd
-Befehl aus, um ein sortiertes Set zu erstellen, in dem jedes Mitglied den gleichen Score hat:
- zadd SomervilleSquares 0 Davis 0 Inman 0 Union 0 porter 0 magoun 0 ball 0 assembly
Auf zrangebylex
müssen ein Schlüsselname, ein Startintervall und ein Stoppinterval folgen. Die Start- und Stoppintervalle müssen mit einer offenen runden Klammer ((
) oder einer offenen eckigen Klammer ([
) beginnen:
- zrangebylex SomervilleSquares [a [z
Output1) "assembly"
2) "ball"
3) "magoun"
4) "porter"
Beachten Sie, dass dieses Beispiel nur vier der acht Mitglieder im Set ausgegeben hat, obwohl der Befehl eine Reihe von a
bis z
suchte. Das liegt daran, dass Redis-Werte groß-/kleinschreibungsabhängig sind. Daher wurden die Mitglieder, die mit Großbuchstaben beginnen, aus der Ausgabe ausgeschlossen. Um diese auszugeben, können Sie Folgendes ausführen:
- zrangebylex SomervilleSquares [A [z
Output1) "Davis"
2) "Inman"
3) "Union"
4) "assembly"
5) "ball"
6) "magoun"
7) "porter"
zrangebylex
akzeptiert auch die Sonderzeichen -
, das negative Unendlichkeit, und +
, das positive Unendlichkeit darstellt. Daher gibt die folgende Befehlssyntax auch jedes Mitglied des sortierten Sets aus:
- zrangebylex SomervilleSquares - +
Beachten Sie, dass zrangebylex
Mitglieder eines sortierten Sets nicht in umgekehrter lexikografischer (ansteigend alphabetischer) Reihenfolge ausgeben kann. Hierfür verwenden Sie zrevrangebylex
:
- zrevrangebylex SomervilleSquares + -
Output1) "porter"
2) "magoun"
3) "ball"
4) "assembly"
5) "Union"
6) "Inman"
7) "Davis"
Da es für die Verwendung mit sortierten Sets bestimmt ist, bei denen jedes Mitglied den gleichen Score hat, akzeptiert zrangebylex
nicht die Option WITHSCORES
. Es akzeptiert jedoch die Option LIMIT
.
Um herauszufinden, wie viele Mitglieder sich in einem gegebenen sortierten Set befinden (oder anders ausgedrückt, um seine Kardinalität zu bestimmen), verwenden Sie den Befehl zcard
. Das folgende Beispiel zeigt, wie viele Mitglieder im Schlüssel faveGuitarists
aus dem ersten Abschnitt dieses Leitfadens enthalten sind:
- zcard faveGuitarists
Output(integer) 9
zcount
kann Ihnen zeigen, wie viele Elemente in einem gegebenen sortierten Set enthalten sind, die in einen Bereich von Scores fallen. Die erste Zahl, die auf den Schlüssel folgt, ist der Beginn des Bereichs und die zweite das Ende des Bereichs:
- zcount faveGuitarists 3 8
Output(integer) 4
zscore
gibt den Score eines angegebenen Mitglieds eines sortierten Sets aus:
- zscore faveGuitarists "Bola Sete"
Output"3"
Wenn entweder das angegebene Mitglied oder der Schlüssel nicht existieren, gibt zscore
als Ausgabe (nil)
an.
zrank
ist ähnlich wie zscore
, aber anstatt den Score des gegebenen Mitglieds auszugeben, gibt es stattdessen seinen Rang aus. In Redis ist Rang – rank – ein nullbasierter Index der Mitglieder eines sortierten Sets, der nach ihrem Score geordnet wird. Beispielsweise hat "Joe Pass"
einen Score von 1
, aber weil dies der niedrigste Score aller Mitglieder im Schlüssel ist, hat er den Rang 0
:
- zrank faveGuitarists "Joe Pass"
Output(integer) 0
Ein weiterer Redis-Befehl namens zrevrank
führt die gleiche Funktion wie zrank
aus, kehrt aber stattdessen den Rang der Mitglieder im Set um. Im folgenden Beispiel hat das Mitglied "Joe Pass"
den niedrigsten Score und daraus folgend den höchsten umgekehrten Rang:
- zrevrank faveGuitarists "Joe Pass"
Output(integer) 8
Die einzige Beziehung zwischen dem Score eines Mitglieds und seinem Rang besteht darin, wo sein Score im Verhältnis zu dem der anderen Mitglieder steht. Wenn zwischen zwei aufeinanderfolgenden Mitgliedern eine Lücke beim Score besteht, reflektiert sich diese nicht in ihrem Rang. Beachten Sie: Wenn zwei Mitglieder den gleichen Score haben, nimmt das Mitglied, das alphabetisch zuerst kommt, den unteren Rang ein.
Wie zscore
geben zrank
und zrevrank
als Ausgabe (nil)
an, wenn der Schlüssel oder das Mitglied nicht existiert.
zlexcount
kann Ihnen zeigen, wie viele Mitglieder in einem sortierten Set innerhalb eines lexikografischen Bereichs enthalten sind. Das folgende Beispiel verwendet das sortierte Set SomervilleSquares
aus dem vorherigen Abschnitt:
- zlexcount SomervilleSquares [M [t
Output(integer) 5
Dieser Befehl folgt derselben Syntax wie der Befehl zrangebylex
. Einzelheiten zum Definieren eines Stringbereichs entnehmen Sie dem vorherigen Abschnitt.
Der Befehl zrem
kann ein oder mehrere Mitglieder aus einem sortierten Set entfernen:
- zrem faveGuitarists "Doug Martsch" "Bola Sete"
zrem
gibt eine ganze Zahl aus, die anzeigt, wie viele Mitglieder aus dem sortierten Set entfernt wurden:
Output(integer) 2
Es gibt drei Redis-Befehle, die es Ihnen ermöglichen, Mitglieder eines sortierten Sets auf der Grundlage eines Bereichs zu entfernen. Wenn z. B. jedes Mitglied in einem sortierten Set den gleichen Score hat, können Sie Mitglieder auf der Grundlage eines lexikografischen Bereichs mit zremrangebylex
entfernen. Dieser Befehl verwendet die gleiche Syntax wie zrangebylex
. Das folgende Beispiel entfernt jedes Mitglied, das mit einem Großbuchstaben beginnt, aus dem im vorherigen Abschnitt erstellten Schlüssel SomervilleSquares
:
- zremrangebylex SomervilleSquares [A [Z
zremrangebylex
gibt eine ganze Zahl an, die anzeigt, wie viele Mitglieder entfernt wurden:
Output(integer) 3
Außerdem können Sie Mitglieder auf der Grundlage eines Score-Bereichs mit dem Befehl zremrangebyscore
entfernen, der die gleiche Syntax wie der Befehl zrangebyscore
verwendet. Das folgende Beispiel entfernt jedes in faveGuitarists
enthaltene Mitglied mit einem Score von 4, 5 oder 6:
- zremrangebyscore faveGuitarists 4 6
Output(integer) 1
Sie können Mitglieder aus einem Set auf der Grundlage eines Rangbereichs mit dem Befehl zremrangebyrank
entfernen, der die gleiche Syntax wie zrangebyrank
verwendet. Der folgende Befehl entfernt die drei Mitglieder des sortierten Sets mit den niedrigsten Rängen, die durch einen Bereich von nullbasierten Indizes definiert sind:
- zremrangebyrank faveGuitarists 0 2
Output(integer) 3
Beachten Sie, dass an remrangebyrank
übergebene Zahlen auch negativ sein können, wobei -1
den höchsten Rang repräsentiert, -2
den nächsthöheren, und so fort.
Redis enthält zwei Befehle, die es Ihnen ermöglichen, Mitglieder mehrerer sortierter Sets zu vergleichen und auf der Grundlage dieser Vergleiche neue Sets zu erstellen: zinterstore
und zunionstore
. Um diese Befehle auszuprobieren, führen Sie die folgenden zadd
-Befehle aus, um einige sortierte Beispielsets zu erstellen.
- zadd NewKids 1 "Jonathan" 2 "Jordan" 3 "Joey" 4 "Donnie" 5 "Danny"
- zadd Nsync 1 "Justin" 2 "Chris" 3 "Joey" 4 "Lance" 5 "JC"
zinterstore
findet die Mitglieder, die von zwei oder mehreren sortierten Sets geteilt werden – deren Schnittmenge – und erzeugt ein neues sortiertes Set, das nur diese Mitglieder enthält. Dieser Befehl muss den Namen eines Zielschlüssels, in dem die sich überschneidenden Mitglieder als sortiertes Set gespeichert werden, die Anzahl der an zinterstore
übergebenden Schlüssel und die Namen der Schlüssel, die Sie analysieren möchten, in der Reihenfolge enthalten:
- zinterstore BoyBands 2 NewKids Nsync
zinterstore
gibt dann eine ganze Zahl aus, die die Anzahl der im sortierten Zielset gespeicherten Elemente anzeigt. Da NewKids
und Nsync
nur ein Mitglied teilen – "Joey"
– gibt der Befehl 1
aus:
Output(integer) 1
Bitte beachten Sie: Falls der Zielschlüssel bereits existiert, überschreibt zinterstore
dessen Inhalt.
zunionstore
erstellt ein neues sortiertes Set, das jedes Mitglied der an den Befehl übergebenen Schlüssel enthält. Dieser Befehl verwendet die gleiche Syntax wie zinterstore
und erfordert den Namen eines Zielschlüssels, die Anzahl der an den Befehl übergebenen Schlüssel und die Namen der Schlüssel:
- zunionstore SuperGroup 2 NewKids Nsync
Wie zinterstore
gibt zunionstore
eine ganze Zahl aus, die die Anzahl der im Zielschlüssel gespeicherten Elemente anzeigt. Obwohl beide der ursprünglich sortierten Sets fünf Mitglieder enthalten, die sortierten Sets jedoch keine sich wiederholenden Mitglieder enthalten können und jeder Schlüssel ein Mitglied mit dem Namen "Joey"
beinhaltet, ist die resultierende ganze Zahl 9
:
Output(integer) 9
Wie zinterstore
überschreibt zunionstore
den Inhalt des Zielschlüssels, wenn dieser bereits existiert.
Um Ihnen beim Erstellen von neuen sortierten Sets mit zinterstore
und zunionstore
mehr Kontrolle über die Scores der Mitglieder zu geben, akzeptieren beide Befehle die Optionen WEIGHTS
und AGGREGATE
.
Auf die Option WEIGHTS
folgt eine Zahl für jedes im Befehl enthaltene sortierte Set, welche die Scores jedes Mitglieds bewertet oder vervielfacht. Die erste Zahl nach der Option WEIGHTS
bewertet die Scores des ersten an den Befehl übergebenen Schlüssels, die zweite Zahl den zweiten Schlüssel, und so fort.
Das folgende Beispiel erstellt ein neues sortiertes Set, das die überschneidenden Schlüssel aus den sortierten Sets NewKids
und Nsync
enthält. Es bewertet die Scores im Schlüssel NewKids
mit dem Faktor drei und die im Schlüssel Nsync
mit dem Faktor sieben:
- zinterstore BoyBandsWeighted 2 NewKids Nsync WEIGHTS 3 7
Wenn die Option WEIGHTS
nicht enthalten ist, wird die Bewertung standardmäßig auf 1
gesetzt, sowohl für zinterstore
als auch für zunionstore
.
AGGREGATE
akzeptiert drei Suboptionen. Die erste davon, SUM
, implementiert das Standardverhalten von zinterstore
und zunionstore
, indem sie die Scores von übereinstimmenden Mitgliedern den kombinierten Sets hinzufügt.
Wenn Sie in zwei sortierten Sets, die ein Mitglied teilen, eine zinterstore
- oder zunionstore
-Operation ausführen, dieses Mitglied aber in jedem Set einen anderen Score hat, können Sie die Operation mit der Suboption MIN
zwingen, den niedrigeren der beiden Punktstände zuzuweisen.
- zinterstore BoyBandsWeightedMin 2 NewKids Nsync WEIGHTS 3 7 AGGREGATE MIN
Da die beiden sortierten Sets nur ein übereinstimmendes Mitglied mit dem gleichen Score (3
) haben, erstellt dieser Befehl ein neues Set mit einem Mitglied, das den niedrigeren der beiden bewerteten Scores hat:
- zscore BoyBandsWeightedMin "Joey"
Output"9"
Ebenso kann AGGREGATE
zinterstore
oder zunionstore
zwingen, mit der Option MAX
den höheren der beiden Scores zuzuweisen:
- zinterstore BoyBandsWeightedMax 2 NewKids Nsync WEIGHTS 3 7 AGGREGATE MAX
Dieser Befehl erstellt ein neues Set mit einem Mitglied, "Joey"
, das den höheren der beiden bewerteten Scores hat:
- zscore BoyBandsWeightedMax "Joey"
Output"21"
Es kann hilfreich sein, sich WEIGHTS
als eine Möglichkeit vorzustellen, die Scores von Mitgliedern vorübergehend zu manipulieren, bevor sie analysiert werden. Ebenso ist es hilfreich, sich die Option AGGREGATE
als Entscheidungsmöglichkeit vorzustellen, wie die Scores der Mitglieder kontrolliert werden können, bevor sie in ihre neuen Sets aufgenommen werden.
Dieser Leitfaden erläutert eine Reihe von Befehlen, die zur Erstellung und Verwaltung von sortierten Sets in Redis verwendet werden. Wenn es andere verwandte Befehle, Argumente oder Verfahren gibt, die Sie in diesem Leitfaden erklärt sehen möchten, schreiben Sie bitte eine Frage oder einen Vorschlag in das Kommentarfeld unten.
Weitere Informationen zu Redis finden Sie in unserer Tutorialserie Verwalten einer Redis-Datenbank.
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!