Syntax, Datentypen, Funktionen und Fehlernummern je Abfragesprache — jeder Abschnitt mit einem Beispiel aus dem Beispielkatalog
und, wo die Sprache einen eigenen Sprachmeilenstein der Roadmap hat, dem Stand jedes einzelnen Punktes daraus.
Über Port 6379 spricht KuonenSQL reines RESP (Redis Serialization Protocol) — direkt auf
derselben Ablage, die über TDS/MariaDB als Tabellen im Schema redis sichtbar ist. Ein
Schlüssel, den eine Anwendung mit SET ablegt, ist im selben Augenblick eine Zeile, die sich
mit einem gewöhnlichen SELECT lesen lässt.
Punkt
Beschreibung
Stand
R13.1 Der Befehlssatz, vollständig
Was heute fehlt: die **sortierten Mengen** (`ZADD`, `ZRANGE`, `ZRANGEBYSCORE`, `ZRANK`, `ZINCRBY`, `ZREM`, `ZCARD`, `ZCOUNT`), die **Bitfelder** …
✅
R13.2 Sitzung, Stapel und Benachrichtigung
`MULTI`/`EXEC`/`DISCARD`/`WATCH` als optimistische Klammer, **Pipelining** (mehrere Befehle in einem Paket, Antworten in derselben Reihenfolge) …
✅
R13.3 Dieselbe Ablage, zwei Sichten
Jeder Redis-Schlüssel erscheint im Schema `redis` als Zeile: `redis.schluessel` (Name, Art, Ablaufzeit, Grösse), `redis.texte`, `redis.hashes` …
✅
R13.4 Auf Geschwindigkeit gebaut
Der Redis-Weg bekommt eine eigene, kurze Bahn: RESP ohne Zwischenobjekte aus dem Puffer lesen (`ReadOnlySequence<byte>` statt Zeichenketten), die …
✅
R13.5 Der Nachweis, dass es den SQL-Server nicht bremst
Eine Messreihe, die beides zugleich laufen lässt: SQL-Last allein, Redis-Last allein, beide zusammen.
✅
R13.6 Dauerhaftigkeit, wenn gewünscht
Redis-Daten liegen bewusst nur im Hauptspeicher.
✅
Beispiele
Zeichenketten
SET, GET und INCR
Zeichenketten sind der Grundtyp: SET/GET speichern und lesen, INCR zählt eine Zahl-Zeichenkette hoch.
SET pruefstand:demo:string:gruss "Hallo Welt"
GET pruefstand:demo:string:gruss
INCR pruefstand:demo:string:zaehler
INCR pruefstand:demo:string:zaehler
Erwartetes Ergebnis
Befehl | Antwort
SET pruefstand:demo:string:gruss "Hallo Welt" | OK
GET pruefstand:demo:string:gruss | Hallo Welt
INCR pruefstand:demo:string:zaehler | 1
INCR pruefstand:demo:string:zaehler | 2
Hashes
HSET, HGET und HGETALL
Ein Hash hält mehrere Feld/Wert-Paare unter einem Schlüssel.
HSET pruefstand:demo:hash:kunde name "Anna" ort "Bern"
HGET pruefstand:demo:hash:kunde name
HGETALL pruefstand:demo:hash:kunde
Erwartetes Ergebnis
Befehl | Antwort
HSET pruefstand:demo:hash:kunde name "Anna" ort "Bern" | 2
HGET pruefstand:demo:hash:kunde name | Anna
HGETALL pruefstand:demo:hash:kunde | [name, Anna, ort, Bern]
Listen
RPUSH, LRANGE und LPOP
Eine Liste hält Werte in Einfügereihenfolge; RPUSH hängt hinten an, LPOP nimmt vorne weg.