Redis – Mehr als ein Key-Value-Store
Sets
Sets sind eine spezielle Form von Listen, da bei Sets jedes Element nur genau einmal vorkommen kann (im Deutschen Mengen genannt). Im Gegensatz zu Listen besitzen Sets aber keinen Index, d.h. es gibt keine festen Positionen innerhalb eines Sets. Befehlen für ein Set ist immer ein S
vorangestellt.
Im Folgenden gibt es einige Beispiele zu Sets. Als Erstes werden zwei Sets angelegt:
redis 127.0.0.1:6379> SADD Audioplayer:Windows "Quod Libet" (integer) 1 redis 127.0.0.1:6379> SADD Audioplayer:Linux Rhythmbox (integer) 1 redis 127.0.0.1:6379> SADD Audioplayer:Linux "Quod Libet" (integer) 1
Abfrage der Anzahl der Werte in einem Set:
redis 127.0.0.1:6379> SCARD Audioplayer:Linux (integer) 2
Alle Werte eines Sets kann man mit SMEMBERS
ausgeben:
redis 127.0.0.1:6379> SMEMBERS Audioplayer:Linux 1) "Quod Libet" 2) "Rhythmbox"
Man kann auch prüfen, ob ein Wert in einem Set enthalten ist. Mögliche Ergebnisse sind dann 0
= falsch und 1
= wahr:
redis 127.0.0.1:6379> SISMEMBER Audioplayer:Linux Banshee (integer) 0 redis 127.0.0.1:6379> SISMEMBER Audioplayer:Linux Rhythmbox (integer) 1
Gemäß der mathematischen Definition von Mengen kann man auch die Schnittmenge zweier Sets bilden:
redis 127.0.0.1:6379> SINTER Audioplayer:Linux Audioplayer:Windows 1) "Quod Libet"
Alle Befehle zu Sets können über den Aufruf von help @set
angezeigt werden.