Amazon MemoryDB for Redis ist ein Redis-kompatibler, zuverlässiger In-Memory-Datenbank-Service für ultraschnelle Leistung. Es wurde speziell für moderne Anwendungen mit Microservices-Architekturen entwickelt.

Amazon MemoryDB ist kompatibel mit Redis, einem beliebten Open-Source-Datenspeicher, der es Kunden ermöglicht, schnell Anwendungen mit denselben flexiblen und benutzerfreundlichen Redis-Datenstrukturen, APIs und Befehlen zu erstellen, die sie bereits heute verwenden. Mit Amazon MemoryDB werden alle Ihre Daten im Speicher gespeichert, wodurch Sie eine Leselatenzzeit von Mikrosekunden und eine Schreiblatenz im einstelligen Millisekundenbereich sowie einen hohen Durchsatz erreichen. Amazon MemoryDB speichert auch Daten dauerhaft über mehrere Availability Zones (AZs) hinweg und verwendet ein Multi-AZ-Transaktionsprotokoll, um schnelles Failover, Datenbank-Wiederherstellung und Knoten-Neustarts zu ermöglichen. Amazon MemoryDB bietet sowohl In-Memory-Leistung als auch Multi-AZ-Beständigkeit und kann als leistungsstarke primäre Datenbank für Ihre Microservice-Anwendungen verwendet werden, sodass Sie sowohl einen Cache als auch eine dauerhafte Datenbank nicht separat verwalten müssen.

Redis-Kompatibilität

Redis ist ein schneller, Open-Source-In-Memory-Schlüsselwert-Datenstrukturspeicher. Entwickler verwenden Redis, um Reaktionszeiten von unter einer Millisekunde bereitzustellen und so Millionen von Anforderungen für Echtzeitanwendungen in den Bereichen Gaming, Ad-Tech, Finanzdienstleistungen, Gesundheitswesen und IoT zu verarbeiten. Im Jahr 2021 wurde Redis von Stack Overflow zum fünften Mal in Folge zur „beliebtesten Datenbank“ gekürt.

Redis bietet flexible APIs, Befehle und Datenstrukturen wie Streams, Sets und Listen, um agile und vielseitige Anwendungen zu erstellen. MemoryDB ist mit Open Source Redis kompatibel und unterstützt dieselben Redis-Datentypen, -Parameter und -Befehle, mit denen Sie bereits vertraut sind. Das bedeutet, dass der Code, die Anwendungen, die Treiber und die Tools, die Sie bereits heute mit Redis verwenden, auch mit MemoryDB genutzt werden können, sodass Sie schnell Anwendungen erstellen können.

Ultraschnelle Leistung

MemoryDB speichert Ihren gesamten Datensatz im Arbeitsspeicher und bietet so eine Lese-Latenzzeit im Mikrosekundenbereich, eine Schreib-Latenz im einstelligen Millisekundenbereich und einen hohen Durchsatz. Sie kann mehr als 13 Billionen Anforderungen pro Tag bearbeiten und Spitzen von 160 Millionen Anforderungen pro Sekunde unterstützen.

Entwickler, die mit Microservices-Architekturen arbeiten, benötigen eine extrem hohe Leistung, da diese Anwendungen Interaktionen mit vielen Servicekomponenten pro Benutzerinteraktion oder API-Aufruf beinhalten können. Mit MemoryDB etablieren Sie extrem niedrige Latenzzeiten, um den Endbenutzern Echtzeitleistung zu bieten.

Amazon MemoryDB für Redis beinhaltet jetzt verbessertes I/O-Multiplexing, das zu erheblichen Verbesserungen des Durchsatzes und der Latenz in großem Maßstab führt. Verbessertes I/O-Multiplexing eignet sich ideal für durchsatzgebundene Workloads mit mehreren Client-Verbindungen, und die Vorteile skalieren mit dem Grad der Parallelität der Workloads. Wenn Sie beispielsweise den Knoten r6g.xlarge verwenden und 5 200 Clients gleichzeitig ausführen, können Sie im Vergleich zu ElastiCache für Redis 6 einen um bis zu 46 % höheren Durchsatz (Lese- und Schreibvorgänge pro Sekunde) und eine um bis zu 21 % geringere 4xlarge-Latenz erzielen. Bei diesen Arten von Workloads kann die Netzwerk-E/A-Verarbeitung eines Knotens zu einem begrenzenden Faktor für die Skalierbarkeit werden. Mit Enhanced IO Multiplexing leitet jeder dedizierte Netzwerk-IO-Thread Befehle von mehreren Clients an die Redis-Engine weiter und nutzt dabei die Fähigkeit von Redis, Befehle effizient stapelweise zu verarbeiten, wie in der folgenden Abbildung dargestellt:

Enhanced IO Multiplexing ist bei Verwendung von Redis 7 automatisch und ohne zusätzliche Kosten verfügbar. Für das erweiterte E/A-Multiplexing von ElastiCache für Redis sind keine Änderungen an der Anwendungs- oder Servicekonfiguration erforderlich.

Weitere Informationen finden Sie in der Dokumentation.

Multi-AZ-Zuverlässigkeit

MemoryDB speichert nicht nur Ihren gesamten Datensatz im Speicher, sondern verwendet auch ein verteiltes Transaktionsprotokoll, um die Haltbarkeit, Konsistenz und Wiederherstellbarkeit der Daten zu gewährleisten. MemoryDB speichert Daten über mehrere AZs hinweg, sodass Sie die Datenbank schnell wiederherstellen und neu starten können. Sie können MemoryDB als einen einzigen, primären Datenbankservice für Ihre Workloads verwenden, die eine geringe Latenz und einen hohen Durchsatz erfordern, anstatt einen Cache für die Geschwindigkeit und eine zusätzliche relationale oder nichtrelationale Datenbank für die Zuverlässigkeit separat zu verwalten.

Skalierbarkeit

Sie können Ihren MemoryDB-Cluster skalieren, um schwankenden Anwendungsanforderungen gerecht zu werden: horizontal durch Hinzufügen oder Entfernen von Knoten oder vertikal durch den Wechsel zu größeren oder kleineren Knotentypen. MemoryDB unterstützt Schreibskalierung durch Sharding und Leseskalierung durch Hinzufügen von Replikaten. Ihr Cluster bleibt weiterhin online und unterstützt Lese- und Schreibvorgänge während der Größenänderung.

Vollständig verwaltet

Einfach zu nutzen

Die ersten Schritte mit MemoryDB sind einfach. Starten Sie einfach einen neuen MemoryDB-Cluster über die AWS-Managementkonsole, oder verwenden Sie die AWS CLI oder das SDK. MemoryDB-Datenbank-Instances sind mit Parametern und Einstellungen vorkonfiguriert, die für den ausgewählten Knotentyp geeignet sind. Sie können einen Cluster starten und Ihre Anwendung innerhalb von Minuten ohne weitere Konfigurationen damit verbinden.

Überwachung und Metriken

MemoryDB bietet Amazon CloudWatch-Metriken für Ihre Datenbank-Instances. Mit der AWS-Managementkonsole können Sie über 35 wichtige Betriebsmetriken für Ihren Cluster prüfen, etwa Datenverarbeitung, Arbeitsspeicher, Speicher, Durchsatz und aktive Verbindungen.

Automatisches Einspielen von Software-Patches

MemoryDB hält Ihre Cluster automatisch mit neuen Updates auf dem neuesten Stand, und Sie können Ihre Cluster ganz einfach auf die neuesten Versionen von Redis aktualisieren.

Sicherheit

Netzwerk

MemoryDB wird in Amazon VPC ausgeführt. So können Sie Ihre Datenbank in Ihrem eigenen virtuellen Netzwerk isolieren und Ihre On-Premises-IT-Infrastruktur mit den Branchenstandards entsprechenden verschlüsselten IPsec-VPNs verbinden. Außerdem können Sie mit der VPC-Konfiguration von MemoryDB die Firewall-Einstellungen festlegen und den Netzwerkzugriff auf Ihre Datenbank-Instances steuern.

Verschlüsselung

Mit MemoryDB werden die Daten im Ruhezustand mit Schlüsseln verschlüsselt, die Sie über den AWS Key Management Service (KMS) erstellen und kontrollieren. Und Cluster, die mit AWS-Graviton2-Knotentypen erstellt werden, enthalten eine immer aktive 256-Bit-DRAM-Verschlüsselung. MemoryDB unterstützt die Verschlüsselung während der Übertragung mit Transport Layer Security (TLS).

Berechtigungen auf API-Ebene

Mit den in Amazon MemoryDB integrierten Funktionen von AWS Identity and Access Management (IAM) können Sie die Aktionen steuern, die Ihre AWS-IAM-Benutzer und -Gruppen auf Amazon-MemoryDB-Ressourcen ausführen können. Beispielsweise können Sie Ihre IAM-Regeln so konfigurieren, dass sichergestellt ist, dass bestimmte Benutzer nur Lesezugriff haben, während ein Administrator Ressourcen erstellen, ändern und löschen kann. Weitere Informationen über Berechtigungen auf API-Ebene erhalten Sie unter Verwendung von AWS-IAM-Richtlinien für Amazon MemoryDB.

Authentifizierung und Autorisierung

MemoryDB verwendet Redis-Zugriffssteuerungslisten (ACL), um sowohl die Authentifizierung als auch die Autorisierung für Ihren Cluster zu steuern. Mit ACLs können Sie unterschiedliche Berechtigungen für verschiedene Benutzer im selben Cluster festlegen.

Integration mit Kubernetes

AWS Controllers für Kubernetes (ACK) für Amazon MemoryDB ermöglicht es Ihnen, MemoryDB-Ressourcen direkt von Ihrem Kubernetes-Cluster aus zu definieren und zu nutzen. So können Sie die Vorteile von MemoryDB zur Unterstützung Ihrer Kubernetes-Anwendungen nutzen, ohne MemoryDB-Ressourcen außerhalb des Clusters definieren oder In-Memory-Datenbankfunktionen innerhalb des Clusters ausführen und verwalten zu müssen. Sie können das MemoryDB-ACK-Container-Image von Amazon ECR herunterladen und sich in der Dokumentation über die Installation informieren. Sie können auch den Blog besuchen, um detailliertere Informationen zu erhalten.

Hinweis: ACK für Amazon MemoryDB ist jetzt allgemein verfügbar. Senden Sie uns Ihr Feedback auf unserer Github-Seite.

ACK für Amazon MemoryDB

JSON-Unterstützung

Amazon MemoryDB bietet ohne Mehrkosten native Unterstützung für JavaScript-Object-Notation-Dokumente (JSON) zusätzlich zu den in Open-Source-Redis enthaltenen Datenstrukturen. Indem Sie die integrierten Befehle verwenden, die für JSON-Dokumente entwickelt und optimiert wurden, können Sie die Entwicklung von Anwendungen vereinfachen. MemoryDB unterstützt partielle Aktualisierungen von JSON-Dokumenten, sowie leistungsstarke Such- und Filterfunktionen mit der Abfragesprache JSONPath. Die Unterstützung von JSON ist bei Verwendung von Redis 6.2 und höher verfügbar. Weitere Informationen finden Sie in der MemoryDB-Dokumentation.

Amazon MemoryDB für Redis ermöglicht es Modellen für Machine Learning (ML) und generativer künstlicher Intelligenz (KI), mit in Amazon MemoryDB gespeicherten Daten in Echtzeit zu arbeiten, ohne Ihre Daten zu verschieben. Mit Amazon MemoryDB können Sie Vektoreinbettungen in Redis-Datenstrukturen speichern, suchen, indexieren und abfragen.

Vektoren sind numerische Repräsentationen unstrukturierter Daten wie Text, Bilder und Video, die aus ML-Modellen erstellt wurden und dabei helfen, die semantische Bedeutung der zugrunde liegenden Daten zu erfassen. Sie können Vektor-Einbettungen aus ML- und KI-Modellen, z. B. von Amazon Bedrock und Amazon SageMaker in Ihrer Amazon-MemoryDB-Datenbank speichern. Lesen Sie unsere Dokumentation, um mehr über die Vektorsuche auf Amazon MemoryDB zu erfahren.

Mit der Vorschau der Vektorsuche für MemoryDB können Sie Millionen von Vektoreinbettungen speichern und Zehntausende Abfragen pro Sekunde (QPS) mit einstelliger Millisekunden-Vektorsuche und Aktualisierungslatenzen durchführen, bei einem Abruf von über 99 %.

Die Vektorsuche für MemoryDB eignet sich für Anwendungsfälle, in denen Spitzenleistung und Skalierung die wichtigsten Auswahlkriterien sind. Sie können die Vektorsuche verwenden, um ML- und generative KI-Anwendungen in Echtzeit in Anwendungsfällen wie Retrieval-Augmented Generation (RAG) für Chat-Bots, Betrugserkennung, Empfehlungen in Echtzeit und Dokumentenabruf zu unterstützen.

Kostenoptimierung

MemoryDB bietet Daten-Tiering als kostengünstige Möglichkeit, Ihre Cluster auf Hunderte von Terabytes Kapazität zu skalieren. Das Daten-Tiering bietet eine Preis-Leistungs-Option für MemoryDB, indem zusätzlich zur Speicherung der Daten im Speicher kostengünstige Solid State Drives (SSDs) in jedem Clusterknoten verwendet werden. Es ist ideal für Workloads, die regelmäßig auf bis zu 20 % ihres gesamten Datenbestands zugreifen, und für Anwendungen, die zusätzliche Latenzzeiten beim Zugriff auf SSD-Daten tolerieren können.

Bei der Verwendung von Clustern mit Daten-Tiering ist MemoryDB so konzipiert, dass die am wenigsten genutzten Elemente automatisch und transparent vom Speicher auf lokal angefügte NVMe-SSDs verschoben werden, wenn die verfügbare Speicherkapazität verbraucht ist. Wenn Sie auf ein auf SSD gespeichertes Element zugreifen, verschiebt MemoryDB es zurück in den Speicher, bevor die Anfrage bedient wird. MemoryDB-Daten-Tiering ist auf Graviton2-basierten R6gd-Knoten verfügbar. R6gd-Knoten verfügen über eine fast fünfmal höhere Gesamtkapazität (Speicher + SSD) und können bei maximaler Auslastung im Vergleich zu R6g-Knoten (nur Speicher) über 60 % Speicherkosten-Einsparungen erzielen. Geht man von 500-Byte-String-Werten aus, kann man typischerweise mit einer zusätzlichen Latenz von durchschnittlich 450 µs für Lese-Anfragen an auf SSD gespeicherte Daten im Vergleich zu Lese-Anfragen an Daten im Speicher rechnen.

MemoryDB bietet reservierte Knoten, damit können Sie im Vergleich zu On-Demand-Knoten bis zu 55 % sparen, wenn Sie eine Nutzungsverpflichtung über eine Laufzeit von ein oder drei Jahren eingehen. Reservierte Knoten ergänzen die On-Demand-Knoten der MemoryDB und bieten Unternehmen die nötige Flexibilität, um ihre Kosten zu senken. MemoryDB bietet drei Zahlungsoptionen für die reservierten Knoten– Keine Vorauszahlung, Teilweise Vorauszahlung und Komplette Vorauszahlung. Dies sollte für jedes Unternehmen eine optimale Balance zwischen Vorauszahlung und effektivem Stundenpreis ermöglichen.

Reservierte MemoryDB-Knoten bieten Größenflexibilität innerhalb einer Knotenfamilie und einer AWS-Region. Das bedeutet, dass der herabgesetzte Preis für reservierte Knoten automatisch auf die Nutzung aller Größen in derselben Knotenfamilie angewendet wird. Durch die Möglichkeit der Größenflexibilität müssen Sie weniger Zeit auf die Verwaltung Ihrer reservierten Knoten verwenden. Da Sie an keine bestimmte Datenbankknotengröße mehr gebunden sind, können Sie Ihren Rabatt außerdem optimal nutzen, auch wenn Ihre Datenbank aktualisiert werden muss.

Weitere Informationen zur Preisberechnung
Preise für MemoryDB anzeigen

Erkunden Sie die Preisoptionen für MemoryDB.

Weitere Informationen 
Lernen im Tutorial
Lernen im Tutorial

Erfahren Sie, wie Sie Ihren ersten MemoryDB-Cluster einrichten.

Weitere Informationen  
 In die Entwicklung mit MemoryDB einsteigen
In die Entwicklung mit MemoryDB einsteigen

Lesen Sie das MemoryDB-Benutzerhandbuch zum Einstieg.

Dokumentation lesen