Einführung
In diesem Lab lernen Sie die grundlegenden Key-Value-Operationen in Redis kennen. Wir werden die redis-cli Kommandozeilenschnittstelle verwenden, um mit dem Redis-Server zu interagieren und grundlegende Operationen wie das Setzen (setting), Abrufen (getting), Überprüfen der Existenz (checking existence), Löschen (deleting) und Festlegen von Ablaufzeiten (setting expiration times) für Schlüssel (keys) durchzuführen. Am Ende dieses Labs werden Sie ein solides Verständnis dafür haben, wie Sie Redis als einfachen Datenspeicher (data store) verwenden können.
Setzen und Abrufen von Key-Value-Paaren
In diesem Schritt konzentrieren wir uns auf die Kernoperationen des Setzens (setting) und Abrufens (retrieving) von Key-Value-Paaren (Schlüssel-Wert-Paaren) in Redis. Dies ist die Grundlage für die Verwendung von Redis als Datenspeicher (data store).
Redis speichert Daten als Key-Value-Paare (Schlüssel-Wert-Paare), ähnlich wie ein Dictionary (Wörterbuch). Der Key (Schlüssel) ist ein eindeutiger Identifikator, und der Value (Wert) sind die Daten, die diesem Key (Schlüssel) zugeordnet sind.
Mit Redis verbinden:
Öffnen Sie ein Terminal in der LabEx VM. Sie sollten sich bereits im Verzeichnis
~/projectbefinden. Stellen Sie mit dem Befehlredis-clieine Verbindung zum Redis-Server her:redis-cliSie sollten die Redis-Eingabeaufforderung sehen:
127.0.0.1:6379>. Dies zeigt eine erfolgreiche Verbindung zum Redis-Server an.Ein Key-Value-Paar setzen:
Setzen wir ein Key-Value-Paar (Schlüssel-Wert-Paar) mit dem Befehl
SET. Wir setzen den Key (Schlüssel)mykeyauf den Value (Wert)myvalue.SET mykey myvalueRedis antwortet mit:
OKDies bestätigt, dass das Key-Value-Paar (Schlüssel-Wert-Paar) erfolgreich gespeichert wurde.
Den Wert eines Keys abrufen:
Um den Value (Wert) abzurufen, der einem Key (Schlüssel) zugeordnet ist, verwenden Sie den Befehl
GET. Rufen wir den Value (Wert) vonmykeyab:GET mykeyRedis antwortet mit:
"myvalue"Dies zeigt, dass wir den Value (Wert), der dem Key (Schlüssel)
mykeyzugeordnet ist, erfolgreich abgerufen haben.Ein weiteres Key-Value-Paar setzen:
Setzen wir ein weiteres Key-Value-Paar (Schlüssel-Wert-Paar) mit einem anderen Key (Schlüssel) und Value (Wert). Diesmal verwenden wir
user:1001als Key (Schlüssel) undJohnals Value (Wert).SET user:1001 JohnRedis antwortet mit:
OKDen Wert des neuen Keys abrufen:
Rufen wir nun den Value (Wert) des Keys (Schlüssels)
user:1001ab:GET user:1001Redis antwortet mit:
"John"Sie haben nun erfolgreich Key-Value-Paare (Schlüssel-Wert-Paare) in Redis gesetzt und abgerufen.
Redis CLI verlassen:
Es ist wichtig, die Redis CLI nach jedem Schritt zu verlassen, damit die Befehle korrekt protokolliert werden. Geben Sie Folgendes ein:
exit
Überprüfen der Existenz von Keys
In diesem Schritt lernen wir, wie man mit dem Befehl EXISTS überprüft, ob ein Key (Schlüssel) in Redis existiert. Dies ist nützlich, um festzustellen, ob ein Key (Schlüssel) gesetzt wurde, bevor man versucht, seinen Value (Wert) abzurufen oder andere Operationen durchzuführen.
Mit Redis verbinden:
Verbinden Sie sich mit dem Redis-Server mit dem Befehl
redis-cli:redis-cliSie sollten die Redis-Eingabeaufforderung sehen:
127.0.0.1:6379>.Existenz eines existierenden Keys überprüfen:
Im vorherigen Schritt haben wir den Key (Schlüssel)
mykeygesetzt. Überprüfen wir mit dem BefehlEXISTS, ob er existiert:EXISTS mykeyRedis antwortet mit:
(integer) 1Eine Antwort von
1zeigt an, dass der Key (Schlüssel)mykeyin Redis existiert.Existenz eines nicht existierenden Keys überprüfen:
Überprüfen wir nun, ob ein Key (Schlüssel) existiert, den wir nicht gesetzt haben. Überprüfen wir beispielsweise einen Key (Schlüssel) namens
nonexistentkey:EXISTS nonexistentkeyRedis antwortet mit:
(integer) 0Eine Antwort von
0zeigt an, dass der Key (Schlüssel)nonexistentkeyin Redis nicht existiert.Redis CLI verlassen:
Verlassen Sie die Redis CLI, um sicherzustellen, dass die Befehle protokolliert werden:
exit
Löschen von Keys
In diesem Schritt lernen wir, wie man Keys (Schlüssel) aus Redis mit dem Befehl DEL löscht. Dies ist wichtig für die Datenverwaltung und das Entfernen veralteter oder unerwünschter Einträge.
Mit Redis verbinden:
Verbinden Sie sich mit dem Redis-Server mit dem Befehl
redis-cli:redis-cliSie sollten die Redis-Eingabeaufforderung sehen:
127.0.0.1:6379>.Einen existierenden Key löschen:
In den vorherigen Schritten haben wir den Key (Schlüssel)
mykeygesetzt. Löschen wir ihn mit dem BefehlDEL:DEL mykeyRedis antwortet mit:
(integer) 1Eine Antwort von
(integer) 1zeigt an, dass ein Key (Schlüssel) erfolgreich gelöscht wurde.Einen nicht existierenden Key löschen:
Versuchen wir, einen Key (Schlüssel) zu löschen, der nicht existiert, z. B.
nonexistentkey:DEL nonexistentkeyRedis antwortet mit:
(integer) 0Eine Antwort von
(integer) 0zeigt an, dass keine Keys (Schlüssel) gelöscht wurden (weil der Key (Schlüssel) nicht existierte).Mehrere Keys löschen:
Der Befehl
DELkann auch verwendet werden, um mehrere Keys (Schlüssel) gleichzeitig zu löschen. Löschen wir den Key (Schlüssel)user:1001, den wir zuvor erstellt haben, und versuchen wir,nonexistentkeyim selben Befehl erneut zu löschen:DEL user:1001 nonexistentkeyRedis antwortet mit:
(integer) 1Eine Antwort von
(integer) 1zeigt an, dass ein Key (Schlüssel) erfolgreich gelöscht wurde (user:1001), und der Versuch,nonexistentkeyzu löschen, wurde ignoriert, da er nicht existierte.Redis CLI verlassen:
Verlassen Sie die Redis CLI:
exit
Festlegen des Key-Ablaufs
In diesem Schritt lernen wir, wie man eine Ablaufzeit für einen Schlüssel in Redis festlegt, sowohl mit dem Befehl EXPIRE als auch mit dem Befehl SET und dem Parameter EX. Dies ist nützlich, um Daten nach einer bestimmten Zeitspanne automatisch zu entfernen, z. B. Sitzungsdaten oder temporäre Caches.
Verbindung zu Redis herstellen:
Verbinden Sie sich mit dem Redis-Server über den Befehl
redis-cli:redis-cliSie sollten die Redis-Eingabeaufforderung sehen:
127.0.0.1:6379>.Schlüssel-Wert-Paar mit Ablaufzeit festlegen (Methode 1: SET mit EX-Parameter):
Redis ermöglicht es Ihnen, ein Schlüssel-Wert-Paar mit einer Ablaufzeit in einem einzigen Befehl mithilfe des Parameters
EXfestzulegen. Legen wir den Schlüsselsessionkeyauf den Wertsessionvaluemit einer Ablaufzeit von 15 Sekunden fest:SET sessionkey sessionvalue EX 15Redis antwortet mit:
OKDieser Befehl legt das Schlüssel-Wert-Paar und die Ablaufzeit in einem Vorgang fest, was effizienter ist als die Verwendung separater Befehle.
TTL des mit EX festgelegten Schlüssels prüfen:
Prüfen wir die verbleibende Lebensdauer (TTL) für den Schlüssel
sessionkey:TTL sessionkeyRedis antwortet mit der Anzahl der verbleibenden Sekunden bis zum Ablauf des Schlüssels (z. B.
(integer) 14). Der Wert wird etwas geringer als 15 sein, aufgrund der Zeit, die seit der Festlegung des Schlüssels vergangen ist.Schlüssel-Wert-Paar festlegen (Methode 2: Verwendung des Befehls EXPIRE separat):
Alternativ können Sie zuerst ein Schlüssel-Wert-Paar festlegen und dann dessen Ablaufzeit separat festlegen. Legen wir den Schlüssel
tempkeyauf den Werttempvaluefest:SET tempkey tempvalueRedis antwortet mit:
OKAblaufzeit mit dem Befehl EXPIRE festlegen:
Legen wir nun eine Ablaufzeit von 10 Sekunden für den Schlüssel
tempkeymithilfe des BefehlsEXPIREfest:EXPIRE tempkey 10Redis antwortet mit:
(integer) 1Eine Antwort von
(integer) 1zeigt an, dass die Ablaufzeit erfolgreich festgelegt wurde.Verbleibende Lebensdauer (TTL) prüfen:
Um die verbleibende Lebensdauer (TTL) für den Schlüssel
tempkeyzu prüfen, verwenden Sie den BefehlTTL:TTL tempkeyRedis antwortet mit der Anzahl der verbleibenden Sekunden bis zum Ablauf des Schlüssels (z. B.
(integer) 9). Der Wert kann etwas geringer als 10 sein, aufgrund der Zeit, die seit der Festlegung der Ablaufzeit vergangen ist. Wenn der Schlüssel nicht existiert oder keine Ablaufzeit hat, gibtTTLbzw.-2oder-1zurück.Redis CLI beenden:
Beenden Sie die Redis CLI:
exit
Zusammenfassung
In diesem Labor haben Sie die grundlegenden Schlüssel-Wert-Operationen in Redis mit der Befehlszeilenschnittstelle redis-cli kennengelernt. Sie haben gelernt, wie man eine Verbindung zum Redis-Server herstellt und den Befehl SET verwendet, um Daten als Schlüssel-Wert-Paare zu speichern. Sie haben auch geübt, Werte mit dem Befehl GET abzurufen. Darüber hinaus haben Sie gelernt, wie man die Existenz von Schlüsseln mit dem Befehl EXISTS prüft, Schlüssel mit dem Befehl DEL löscht und Ablaufzeiten für Schlüssel mit dem Befehl SET und dem Parameter EX sowie dem Befehl EXPIRE festlegt. Der Befehl SET mit dem Parameter EX ist besonders nützlich, da er es Ihnen ermöglicht, ein Schlüssel-Wert-Paar mit Ablaufzeit in einem einzigen, effizienten Vorgang festzulegen. Dies sind die Bausteine, um Redis als einen einfachen und effizienten Datenspeicher zu nutzen.


