Anwendungsfall: Redis vs. MongoDB

Bei diesem Text handelt es sich um eine maschinell erstellte Übersetzung. Eine überarbeitete Version ist in Planung.

Die IONOS Community wird ab dem 01.01.2021 nicht mehr verfügbar sein. Wir laden Sie ein, uns auf Twitter oder Facebook zu folgen.

Wenn Sie Fragen zu unseren Produkten haben, finden Sie im IONOS Hilfe-Center weitere Informationen. Alternativ hilft Ihnen unser Support-Team unter @IONOS_hilft gerne weiter.

Einführung

Sowohl Redis als auch MongoDB sind beliebte, leistungsstarke "NoSQL"-Alternativen zu einer traditionellen relationalen Datenbank wie MySQL. Diese Anwendungsfälle untersuchen den Unterschied zwischen ihnen. Erfahren Sie die Vor- und Nachteile jedes einzelnen und finden Sie weitere Informationen darüber, welche am besten zu Ihrem Projekt passt.

Verwandte Artikel:

Anwendungsfall: Übersicht

Redis ist ein Key-Value-Speicher, der Daten in einer flexiblen Struktur ähnlich einem Dictionary oder Hash speichert.

Redis speichert Daten im Speicher, was sie extrem schnell macht, da Daten nie von der Festplatte abgerufen werden müssen. Damit ist Redis eine ausgezeichnete Wahl für so genannte "heiße Daten", die zwar spontan abgerufen werden müssen, aber nicht dauerhaft gespeichert werden müssen.

MongoDB ist etwas ähnlicher als eine traditionelle relationale Datenbank. MongoDB speichert Daten in schemafreien, JSON-ähnlichen Dokumenten, auf die mit der SQL-ähnlichen Abfragesprache von MongoDB zugegriffen werden kann.

Szenario 1: Sitzungs-Caching

In diesem Szenario muss der Benutzer ein System einrichten, um Session-Caching für Website-Besucher zu speichern. Dadurch werden die Sitzungsdaten des Besuchers (einschließlich der Seiten, die der Besucher gesehen hat, und der Artikel, die er angesehen hat) 24 Stunden lang gespeichert.

Redis ist die beste Wahl für diesen Benutzer. Da Redis keine Daten auf die physische Festplatte schreibt, ist es eine ausgezeichnete Lösung für "heiße Daten", die für kurze Zeit aufbewahrt, aber nicht dauerhaft gespeichert werden müssen.

Die schnellen Reaktionszeiten und die leichte Datenstruktur von Redis machen es auch zu einer ausgezeichneten Wahl für die Speicherung von Sitzungsdaten.

Szenario 2: Flexibilität bei der Abfrage

In diesem Szenario möchte der Benutzer Kundendaten speichern und plant, diese auf verschiedene Weise abzufragen.

MongoDB ist die beste Wahl für dieses Projekt. Das flexible Datenschema von MongoDB ermöglicht es dem Benutzer, eine Vielzahl von Daten über einen Kunden zu speichern, ohne sich um die Erstellung neuer Tabellenfelder kümmern zu müssen.

Darüber hinaus bietet MongoDB einen leistungsfähigen Satz von Abfragetools, die es dem Benutzer ermöglichen, die Daten auf viele verschiedene Arten abzufragen, ähnlich wie bei herkömmlichen SQL "Join"-Anweisungen.

.

Szenario 3: Skalierung

Für dieses Szenario plant der Anwender in Zukunft ein starkes Wachstum und muss in der Lage sein, seine Implementierung zu erweitern.

MongoDB ist die klare Wahl, wenn es um die Skalierung geht. MongoDB unterstützt mehr Skalierungsmethoden als Redis, auch weil das Wachstum von Redis durch die Menge an RAM auf dem physischen Rechner begrenzt ist. Obwohl es durchaus möglich ist, eine Redis-Installation zu vergrößern, ist dieser Prozess mit MongoDB einfacher und stabiler.

Szenario 4: Leistung

Der Benutzer in diesem Szenario benötigt die schnellstmögliche Performance seiner Datenbanklösung und ist bereit, in anderen Punkten Kompromisse einzugehen, um dies zu erreichen.

Da alle seine Daten im Speicher abgelegt werden, ist die Leistungsgeschwindigkeit von Redis unübertroffen. Obwohl MongoDB recht schnell ist, sind die Benchmarks für Redis deutlich schneller.