So verwenden Sie Redis -Scan

So verwenden Sie Redis -Scan
In diesem Leitfaden werden Sie vermittelt, wie Sie mit dem Befehl Redis Scan arbeiten können. Der Scan -Befehl wird verwendet, um die Schlüssel in einer bestimmten Redis -Datenbank durchzusetzen.Der Scanbefehl in Redis ist ein Cursor-basierter Iterator. Daher gibt der Redis -Server einen aktualisierten Cursor für jeden Befehlsanruf zurück.

Was ist Redis -Scan?

Wie bereits erwähnt, ist der Scan in Redis ein Cursor-basierter Iterator, mit dem Sie den Schlüsselsatz in einer bestimmten Redis-Datenbank iterieren können. Der Befehl akzeptiert die Cursorposition als Argument.

Der Server gibt jedes Mal, wenn der Befehl aufgerufen wird. Die Verwendung des aktualisierten Cursors als Argument im folgenden Befehlsaufruf kann verwendet werden.

Die Iteration beginnt, wenn der Cursor an Position 0 ist und stoppt, wenn der vom Server stammende Cursor bei 0 ist.

Verwenden von Scan - Beispiele

Nehmen wir einige Beispiele, um zu veranschaulichen, wie der Scanbefehl funktioniert. Erstellen Sie zunächst eine Sammlung von Schlüssel und Werten, wie im folgenden Befehl gezeigt:

127.0.0.1: 6379> mset key1 value1 key2 value2 key3 value3 key4 value4 key5 value5 key6 Wert6
OK

Im obigen Beispiel fügen Sie einen Satz von Dummy -Taste und Wertpaaren für die Veranschaulichungszwecke ein.

Nachdem wir eine Datenbank mit Schlüsseln und Werten haben, können wir den Befehl scan verwenden, um über die Tasten zu iterieren.

Der Befehl kann ausgeführt werden als:

127.0.0.1: 6379> scannen 0
1) "0"
2) 1) "Key4"
2) "RQ: Fertig: Standard"
3) "Key5"
4) "Key6"
5) "Key2"
6) "Key3"
7) "RQ: Warteschlangen"
8) "Key1"
9) "Kapitäne"

Sobald wir den Befehl ausgeführt haben, wird er die Schlüssel in der Datenbank iteriert und alle verfügbaren Schlüssel zurückgeben.

Hinweis: Der Befehl scan gibt nur die ersten zehn Schlüssel in der Datenbank zurück. Da der Scanbefehl die ersten zehn Elemente in unserem Beispiel abrufen kann, gibt er einen Ganzzahlwert von 0 zurück, wie oben gezeigt.

Nehmen wir ein Beispiel, bei dem der vom Server zurückgegebene Cursor nicht 0 ist. Wenn wir die Schlüssel hinzufügen, wie im folgenden Befehl gezeigt:

Mset key7 value7 key8 value8 key9 value9 key10 value10 key11 Value11 Key12 Wert12

Wenn wir den Befehl scannen, werden die letzten Position zurückgegeben, an der der Cursor angehalten wird.

127.0.0.1: 6379> scannen 0
1) "13"
2) 1) "Key4"
2) "Key9"
3) "RQ: Fertig: Standard"
4) "Key5"
5) "Key6"
6) "Key8"
7) "Key2"
8) "Key3"
9) "Key10"
10) "Key7"
11) "RQ: Warteschlangen"

In diesem Beispiel liegt die Cursorposition bei 13. Wir können diese Position verwenden, um die verbleibenden Schlüssel zu scannen.

127.0.0.1: 6379> scannen 13
1) "0"
2) 1) "KEY11"
2) "Key1"
3) "KEY12"
4) "Kapitäne"

Da der Befehl alle Schlüssel abreißt, gibt er in diesem Fall den Cursor an Position 0 zurück.

Scan Optionen

Der Befehl scan akzeptiert zwei Hauptoptionen:

  1. ZÄHLEN
  2. PASSEN

Scanzahl

Mit dem Befehl count können Sie ändern, wie viele Schlüssel der Scan -Befehl pro Anruf abgerufen werden. Standardmäßig holt der Befehl scan zehn Schlüssel ab.

Wir können dies jedoch ändern, indem wir den Befehl count festlegen.

127.0.0.1: 6379> scannen 0 count 15

Beispielausgabe aus dem obigen Befehl ist wie gezeigt:

1) "0"
2) 1) "Key4"
2) "Key9"
… Verkürzt…
14) "Key12"
15) "Kapitäne"

In diesem Beispiel setzen wir den Cursor auf 15 Elemente anstelle des Standards 10 zurück. Da in der Datenbank nicht mehr als 15 Schlüssel vorhanden sind, gibt der Server die Schlüsselposition bei 0 zurück.

Scan Match

Mit der Option Match können Sie nach Schlüssel scannen, die einem bestimmten Muster entsprechen. Um beispielsweise alle Schlüssel zu k*zurückzugeben, können wir dies tun.

127.0.0.1: 6379> scan 0 Match k*
1) "13"
2) 1) "Key4"
2) "Key9"
3) "Key5"
4) "Key6"
5) "Key8"
6) "Key2"
7) "Key3"
8) "Key10"
9) "Key7"

Der obige Befehl gibt nur die Schlüssel zurück, die dem angegebenen Muster entsprechen.

Sie können die Übereinstimmungs- und Zähloptionen im selben Befehl verwenden.

127.0.0.1: 6379> scannen 0 Übereinstimmung K* Count 15
1) "0"
2) 1) "Key4"
2) "Key9"
---GEKÜRZT---
11) "Key1"
12) "Key12"

Abschluss

Mit diesem Leitfaden gibt Ihnen die Grundlagenverwendung und Beispiele für die Verwendung des Befehls zum Redis -Scan. Mit dem Scan können Sie die Tasten der Datenbank mithilfe einer Cursorposition iterieren. Sie können die Dokumentation überprüfen, um weitere Scan -Variationen zu erhalten.