Login
Newsletter
Werbung

Do, 20. September 2012, 15:00

Redis – Mehr als ein Key-Value-Store

Hashes

Ein weiterer Datentyp sind Hashes. Hier besteht der Wert wiederum aus Schlüssel-Werte-Paaren. Die maximale Anzahl der Hashes pro Schlüssel liegt bei komfortablen 232 (über 4 Milliarden), was mehr als genug ist.

Befehle für Hashes erkennt man daran, dass ihnen ein H vorangestellt ist. Im folgenden Beispiel werden zwei Schlüssel mit Hashes als Wert angelegt. Als erstes dreimal einzeln:

redis 127.0.0.1:6379> HSET Winamp type Audioplayer
(integer) 1
redis 127.0.0.1:6379> HSET Winamp platform Windows
(integer) 1
redis 127.0.0.1:6379> HSET Winamp license closed
(integer) 1

Und jetzt drei mit einem Befehl:

redis 127.0.0.1:6379> HMSET Banshee type Audioplayer platform Linux license free
OK

Man kann auch alle Hashes zu einem Schlüssel abfragen:

redis 127.0.0.1:6379> HGETALL Winamp
1) "type"
2) "Audioplayer"
3) "platform"
4) "Windows"
5) "license"
6) "closed"

Und die gezielte Abfrage von nur einem bestimmtem Wert eines Hashs geht mittels:

redis 127.0.0.1:6379> HGET Banshee platform
"Linux"

Möchte man die Anzahl der Hashes zu einem Schlüssel abfragen, nutzt man HLEN:

redis 127.0.0.1:6379> HLEN Banshee
(integer) 3

Neben HSET kann man mit HDEL einen Hash-Schlüssel auch wieder löschen:

redis 127.0.0.1:6379> HDEL Banshee platform
(integer) 1

Fragt man nun alle Hash-Werte ab, fehlt der eben gelöschte Wert für die Plattform:

redis 127.0.0.1:6379> HGETALL Banshee
1) "type"
2) "Audioplayer"
3) "license"
4) "free"

Redis hält noch mehr Befehl für den Umgang mit Hashs bereit. Diese können über den Aufruf von help @hash angesehen werden.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung