Redis ist ein In-Memory-Datenstruktur-Server.
Strings¶
SET user:1:name 'Max'
GET user:1:name
INCR page:views
SETEX session:abc 3600 '{...}'
Hashes¶
HSET user:1 name 'Max' email 'max@ex.com'
HGETALL user:1
Lists¶
LPUSH queue:tasks '{...}'
RPOP queue:tasks
Sorted Sets¶
ZADD leaderboard 1000 'player1' 950 'player2'
ZREVRANGE leaderboard 0 9 WITHSCORES
HyperLogLog¶
PFADD visitors 'u1' 'u2' 'u3'
PFCOUNT visitors
Praktische Verwendungsmuster¶
Jede Redis-Datenstruktur hat spezifische Anwendungsfaelle. Strings mit TTL (SETEX) sind die Grundlage fuer Session-Management und Caching. Hashes speichern Objekte effizient — ein Hash pro Benutzerprofil statt Dutzender String-Schluessel. Lists funktionieren als FIFO-Warteschlangen fuer Task-Processing (LPUSH + BRPOP).
Sorted Sets sind die einzigartigste Redis-Struktur — sie ermoeglichen sortierte Sammlungen mit O(log N)-Operationen. Typische Anwendungen sind Leaderboards, Rate Limiting (Sliding Window), Priority Queues und zeitbasierte Indizes. HyperLogLog ist eine probabilistische Struktur zum Zaehlen einzigartiger Elemente mit konstantem Speicher (~12 KB) und einem maximalen Fehler von 0,81%. Ideal zum Zaehlen von Unique Visitors oder Distinct Values in Streams.
Redis = Leistungsstarke Strukturen¶
Strings=Cache, Hashes=Objekte, Lists=Warteschlangen, ZSets=Leaderboards.