Datenbank: Python-Client redis-py 4.1 bringt Support für weitere Redis-Module
Der Python-Client für die Datenbank Redis lässt sich nun mit weiteren Modulen wie RedisJSON nutzen. Auch nahezu alle Befehle aus Redis 6.2 sind mit an Bord.
Redis hat redis-py 4.1 veröffentlicht. Der Anbieter der gleichnamigen In-Memory-Datenbank Redis stellt damit ein Python-Interface für den Redis-Key-Value-Store bereit. Bereits seit 2018 ist der ehemals separate Python-Client in die Datenbank integriert. Das aktuelle Release bietet neben einer überarbeiteten Struktur mit Fokus auf Python 3.6 und der Nutzungsmöglichkeit mit Python 3.10 neue Features wie einen erweiterten Modul-Support.
Einsatz von Redis-Modulen in redis-py
Nachdem die Vorversion redis-py 4.0 erstmals die Verwendung mit Redis-Modulen erlaubt hatte, erweitert das aktuelle Release den Support auf RedisJSON, RediSearch, RedisTimeSeries, RedisGraph und RedisBloom. Das Redis-Team zeigt, wie sich JSON-Daten mit JSON-spezifischen Befehlen speichern und abrufen lassen:
### STORING and RETRIEVING JSON
import redis
r = redis.Redis()
myDoc = {'hello', 'world', 'colours': ['red', 'blue', 'green'], 'hmm': {'hello': 'again'}}
r.json().set('colors', '.', myDoc)
r.json().get('colors')
Auch das Abrufen mehrerer Keys aus Dokumenten wie dem obigen myDoc ist möglich:
### FETCHING ALL KEYS NAMED �hello� from the JSON document
r.json().get('colors', '$..hello')
Zudem ist die Kombination der Fähigkeiten von RedisJSON und RediSearch nun auch im Python-Client möglich.
Weitere Neuerungen
Die letzte Redis-Version 6.2 brachte neben einer Neuausrichtung auf die Community einige neue Befehle. redis-py 4.1 fügt über 30 neue Befehle zu seinem Repertoire hinzu und besitzt damit annähernd die volle Bandbreite der Befehle aus Redis 6.2. Dazu zählen etwa GETEX
, CLIENT INFO
und CLIENT KILL
. Auch die Verwendung mit der verteilten Redis-Implementierung Redis Cluster ist in redis-py 4.1 möglich.
Zukunftspläne und Installationshinweise
Künftig soll sich redis-py auch mit weiteren Modulen wie RedisAI nutzen lassen. Die für Redis 7 geplanten RESP3-Funktionen sind für den Python-Client ebenso geplant wie ein verbessertes Developer-Tooling, um ein Mitwirken daran zu vereinfachen.
Bei einem Upgrade von redis-py sind laut Entwicklungsteam keine Kompatibilitätsprobleme zu erwarten. Der Client steht via PyPI (Python Package Index) zum Download bereit und erfordert Python 3.6 oder höher sowie einen laufenden Redis-Server.
Alle weiteren Informationen zu redis-py 4.1 sind der Ankündigung zu entnehmen.
(mai)