Was ist Valkey?

Valkey ist ein speicherinterner Schlüssel/Wert-Datenspeicher, der für zahlreiche Anforderungen an die Anwendungsentwicklung verwendet werden kann, darunter Caching, Message Queues und Sitzungsspeicher. Sie können sie auch als primäre In-Memory-Datenbank verwenden, wobei die Daten im RAM gespeichert werden, um schnelle Lese- und Schreibgeschwindigkeiten zu erzielen.

Als NoSQL-Datenbank hat Valkey ein flexibleres Schema als eine relationale Datenbank, die Daten in strengen Spalten und Zeilen speichert.

Valkey verwendet die einfache Schlüssel-Wert-Methode zur Datenspeicherung, bei der ein Wert einer eindeutigen Kennung – dem Schlüssel – zugeordnet wird. Dadurch sind unglaublich schnelle Suchvorgänge möglich, wenn Daten direkt über ihren Schlüssel abgerufen werden. Außerdem bietet es die Flexibilität, eine Reihe von Datentypen aufzunehmen, darunter Strings, Sets, Listen, Hashes und Streams.

Sie möchten direkt einen Valkey-Cluster einrichten? Erste Schritte mit Memorystore

Wichtigste Ergebnisse

Valkey ist ein Open-Source-Schlüssel-Werte-Datenspeicher. Der Dienst ist für seine extrem niedrige Latenz bekannt und eignet sich daher ideal für Caching, Message Queues und Anwendungen, die Echtzeitdaten erfordern. Hier eine kurze Übersicht über die wichtigsten Funktionen von Valkey:

  • In-Memory-Datenspeicher: Daten werden hauptsächlich im RAM gespeichert, was extrem schnelle Lese- und Schreibgeschwindigkeiten ermöglicht.
  • Schlüssel/Wert-Methode: Daten werden in Schlüssel/Wert-Paaren gespeichert, was Flexibilität für eine Reihe von Datentypen und schnelle Suchvorgänge bietet.
  • Redis-Alternative: Valkey basiert auf derselben Codebasis wie Redis, ist aber weiterhin Open Source.


Häufig gestellte Fragen zu Valkey

Valkey kann eine Reihe von Datentypen speichern, darunter Strings, Hashes, Listen, Sets und sortierte Sets. Außerdem werden erweiterte Datentypen wie Streams, raumbezogene Indizes, Bitmaps und Vektoren unterstützt. Das macht die Datenbank zu einem vielseitigen Tool für eine Vielzahl von Anwendungen, einschließlich KI-Agenten.


Der Hauptgrund für die Verwendung einer In-Memory-Datenbank wie Valkey ist die Geschwindigkeit. Der Zugriff auf Daten aus dem RAM ist schneller als das Lesen von der Festplatte. Dadurch erreicht Valkey eine extrem niedrige Latenz, oft im Sub-Millisekundenbereich. Diese Geschwindigkeit ist entscheidend für Anwendungsfälle wie Echtzeit-Caching und schnelle Analysen, bei denen ein sofortiger Datenzugriff unerlässlich ist.


Der Hauptunterschied liegt darin, wie sie Daten strukturieren, speichern und abrufen. Eine Schlüssel/Wert-Datenbank wie Valkey speichert Daten als Sammlung eindeutiger Schlüssel, die jeweils mit einem einzelnen Wert verknüpft sind. Dieses einfache Modell ermöglicht einen schnellen Abruf, wenn Daten speziell nach ihrem Schlüssel gesucht werden. Eine relationale Datenbank hingegen speichert Daten in Tabellen, wobei JOINs verwandte Daten verknüpfen. Dieses Modell bietet die beste Leistung für Abfragen, die Daten aus mehreren Sammlungen abrufen müssen.


Vorteile von Valkey

Valkey kombiniert Geschwindigkeit mit der Flexibilität, Skalierbarkeit und Ausfallsicherheit, die für anspruchsvolle Arbeitslasten erforderlich sind.

Schnelle In-Memory-Datenbank

Da Daten hauptsächlich im RAM und nicht auf Festplatten gespeichert werden, bietet Valkey einen unglaublich hohen Durchsatz und eine niedrige Latenz. Das macht es ideal für Anwendungen, bei denen es auf Geschwindigkeit ankommt.

Open Source

Als Open-Source-Projekt profitiert Valkey von Beiträgen der Community und der Flexibilität, ohne Lizenzbeschränkungen integriert und angepasst zu werden.


Hochverfügbarkeit

Valkey unterstützt die Master-Replikat-Replikation für automatisches Failover und Datenredundanz, wodurch Ausfallzeiten minimiert und ein kontinuierlicher Dienst bereitgestellt werden.

Datenpersistenz

Valkey ist zwar in erster Linie eine In-Memory-Datenbank, bietet aber auch Persistenzoptionen, um Datenverlust zu verhindern. Daten können über RDB-Snapshots (Redis-Datenbank) und AOF-Logs (Append-Only File) auf dem Laufwerk gespeichert werden, um die Daten auch nach einem Neustart zu erhalten.


Nahtlose horizontale Skalierung

Valkey ist so konzipiert, dass Daten effizient auf mehrere Knoten und Cluster verteilt werden. Das bedeutet, dass Sie problemlos skalieren können, um steigende Zugriffe ohne Leistungseinbußen zu bewältigen.


Echtzeitkommunikation

Valkey bietet ein Pub/Sub-Messaging-System, das die Echtzeitkommunikation zwischen verschiedenen Anwendungen oder verschiedenen Teilen einer einzelnen Anwendung ermöglicht. Das kann Funktionen wie Live-Chat und Echtzeit-Datenfeeds unterstützen.


Häufige Anwendungsfälle für Valkey

In-Memory-Datenspeicher wie Valkey eignen sich besonders für Anwendungen und Funktionen, die auf extrem niedrige Latenz angewiesen sind. Dazu zählen unter anderem:

  • Caching: Valkey kann als Hochgeschwindigkeits-Cache-Ebene vor langsameren, festplattenbasierten Datenbanken fungieren. Häufig aufgerufene Daten können in Valkey gespeichert werden, wodurch die Belastung der primären Datenbank erheblich reduziert und die Reaktionszeiten beschleunigt werden.
  • Nachrichtenwarteschlangen: Die Pub/Sub-Funktionen von Valkey machen es zu einer ausgezeichneten Wahl als Message Broker. Damit lässt sich die Echtzeitkommunikation zwischen verschiedenen Diensten oder Mikrodiensten erleichtern, was Anwendungsfälle wie Chat-Anwendungen und Benachrichtigungen unterstützt.
  • Echtzeitanalysen: Für Anwendungen, die Daten in Echtzeit verarbeiten und analysieren müssen, wie z. B. Pakettracker, Navigations-Apps oder Gaming-Bestenlisten, ist Valkey aufgrund seiner Geschwindigkeit die ideale Wahl.
  • Sitzungsspeicher: Bei der Verwaltung von Nutzersitzungen in Webanwendungen wie E-Commerce-Websites oder Social-Media-Plattformen ist ein schneller Zugriff auf Nutzerpräferenzen, Anmeldestatus und Einkaufswageninhalte erforderlich. Valkey bietet eine schnelle und zuverlässige Möglichkeit, diese Sitzungsdaten zu speichern und abzurufen.
  • Maschinelles Lernen: Die niedrige Latenz und die Vektorsuchfunktionen von Valkey machen es zu einer leistungsstarken Datenbank für Anwendungen, die maschinelles Lernen nutzen. Sie können Vektoreinbettungen – die numerischen Darstellungen von Daten wie Text oder Bilder – speichern und schnell durchsuchen, um komplexe Ähnlichkeitssuchen durchzuführen. So können Nutzern in Echtzeit ähnliche Produkte, Artikel oder Medien vorgeschlagen werden.

Valkey im Vergleich zu Redis

Valkey wurde ursprünglich von Redis 7.2 abgeleitet. Das bedeutet, dass es auf derselben Codebasis basiert und einige grundlegende Merkmale und Funktionen mit Redis teilt. Wie Valkey ist Redis ein In-Memory-Schlüssel/Wert-Datenspeicher, der einen hohen Durchsatz bietet und eine Reihe von Datenstrukturen unterstützt. Beide sind für ihre Hochverfügbarkeit und Skalierbarkeit bekannt.

Der Hauptunterschied ist, dass Valkey Open Source ist und unter einer großzügigen BSD-Lizenz veröffentlicht wurde. Entwickler können die Software also frei verwenden, ändern und dazu beitragen.

Entwickelt wurde Valkey 2024 als Reaktion auf die Umstellung von Redis Inc. auf eine restriktivere „source available“-Lizenz. Um eine Open-Source-Alternative für die Community zu erhalten, haben sich mehrere zentrale Redis-Mitwirkende zusammengetan und Valkey auf der Grundlage der letzten Open-Source-Version von Redis ins Leben gerufen.

Valkey wird durch einen kollaborativen, von der Community geführten Entwicklungsansatz vorangetrieben, bei dem die Roadmap und neue Funktionen von den beitragenden Mitgliedern des Linux Foundation-Projekts entschieden werden – mit Beiträgen von großen Cloud-Anbietern, einschließlich Google Cloud.

Seit Valkey 8.0 wurden wichtige Verbesserungen an der Valkey-Engine vorgenommen, die sich auf die Optimierung der Vektorsuche, die verbesserte Clusterverwaltung und die Multithread-Befehlsausführung konzentrieren, also die Möglichkeit, Befehle parallel auf mehreren CPU-Kernen zu verarbeiten.

Valkey-Bereitstellung mit Google Cloud selbst verwalten

Für diejenigen, die eine detailliertere Kontrolle, Anpassung oder spezifische Bereitstellungskonfigurationen wünschen, kann Valkey manuell in der Compute-Infrastruktur von Google Cloud bereitgestellt werden. Mit dieser Methode haben Sie die Umgebung vollständig im Blick.

  • Compute Engine (VMs): Starten Sie Google Compute Engine-Instanzen (VMs) und installieren Sie den Open-Source-Valkey-Server direkt. So haben Sie die volle Kontrolle über die Konfiguration, die Skalierungsparameter und das zugrunde liegende Betriebssystem.
  • Google Kubernetes Engine (GKE): Valkey lässt sich mit Docker einfach containerisieren und als Pod oder zustandsorientierte Anwendung in einem GKE-Cluster bereitstellen. Dies kann ein geeigneter Ansatz für Anwendungen sein, die bereits Kubernetes verwenden, da er robuste und erweiterte Orchestrierungsfunktionen bietet.


Vollständig verwalteter Dienst mit Google Cloud Memorystore for Valkey

Memorystore for Valkey ist ein vollständig verwalteter Dienst, der einen leistungsstarken, hochverfügbaren und skalierbaren Valkey-Dienst in der Cloud bietet.

Sie profitieren von den Vorteilen einer In-Memory-Datenbank, ohne die betrieblichen und finanziellen Belastungen durch die Verwaltung der zugrunde liegenden Infrastruktur.

Google Cloud übernimmt die Verwaltungsarbeit, einschließlich Patching, Sicherheit und Skalierung, sodass Sie sich auf die Entwicklung von Anwendungen mit Echtzeitdaten konzentrieren können.

  • Vollständig verwaltet: Google übernimmt den Verwaltungsaufwand für Valkey-Instanzen, einschließlich Bereitstellung, Patching und Failover.
  • Hohe Leistung: Memorystore for Valkey nutzt die Infrastruktur von Google Cloud und bietet die niedrige Latenz und den hohen Durchsatz, die für anspruchsvolle Echtzeitanwendungen erforderlich sind – mit Datenzugriff in weniger als einer Millisekunde.
  • Hohe Verfügbarkeit: Memorystore repliziert Daten automatisch über mehrere Zonen hinweg und bietet ein SLA von bis zu 99,99 %.
  • Skalierbar: Memorystore bietet eine nahtlose Skalierung von Valkey-Instanzen ohne Ausfallzeiten, um den sich ändernden Anforderungen Ihrer Anwendung gerecht zu werden.
  • Sicher: Memorystore ist mit robusten Sicherheitsfunktionen geschützt, darunter VPC-Konnektivität (Virtual Private Cloud), Überwachung rund um die Uhr sowie Identitäts- und Zugriffsverwaltung (IAM).
  • Perfekt für KI-Anwendungen: Memorystore for Valkey unterstützt die ANN-Vektorsuche (Approximate Nearest Neighbor) und die KNN-Vektorsuche (Exact Nearest Neighbor) und ist damit ein idealer Datenspeicher mit geringer Latenz für generative KI.

Mit Memorystore die nächsten Schritte gehen

Profitieren Sie von einem Guthaben über 300 $, um Google Cloud kennenzulernen.

Google Cloud