Wesentliche Versionsverhalten und Kompatibilitätsunterschiede - Amazon ElastiCache (RedisOSS)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Wesentliche Versionsverhalten und Kompatibilitätsunterschiede

Wichtig

Auf der folgenden Seite sind alle Inkompatibilitätsunterschiede zwischen den Versionen aufgeführt und alle Aspekte angegeben, die Sie beim Upgrade auf neuere Versionen beachten sollten. In dieser Liste sind alle Probleme bezüglich Versionsinkompatibilitäten aufgeführt, die beim Upgrade auftreten können.

Sie können direkt von Ihrer aktuellen Redis OSS-Version auf die neueste verfügbare Redis OSS-Version aktualisieren, ohne dass sequentielle Upgrades erforderlich sind. Sie können beispielsweise direkt von Redis OSS Version 3.0 auf Version 7.0 aktualisieren.

Redis OSS-Versionen werden mit einer semantischen Version identifiziert, die aus einer MAJOR-, MINOR- und PATCH-Komponente besteht. In Redis OSS 4.0.10 ist die Hauptversion beispielsweise 4, die Nebenversion 0 und die Patch-Version 10. Diese Werte werden im Allgemeinen basierend auf den folgenden Konventionen schrittweise erhöht:

  • HAUPTVERSIONEN stehen für API-inkompatible Änderungen

  • Unterversionen stehen für neue Funktionen, die abwärtskompatibel hinzugefügt wurden

  • PATCH-Versionen stehen für abwärtskompatible Fehlerbehebungen und nicht funktionale Änderungen

Wir empfehlen, innerhalb einer bestimmten HAUPT-/UNTERVERSION immer auf der neuesten Patch-Version zu bleiben, um die neuesten Leistungs- und Stabilitätsverbesserungen zu erhalten. Ab Redis OSS 6.0 wird ElastiCache (Redis OSS) eine einzige Version für jede Redis OSS-Nebenversion anbieten, anstatt mehrere Patch-Versionen anzubieten. ElastiCache (Redis OSS) verwaltet automatisch die Patch-Version Ihrer laufenden Cache-Cluster und sorgt so für eine verbesserte Leistung und erhöhte Sicherheit.

Wir empfehlen außerdem, regelmäßig auf die neueste Hauptversion zu aktualisieren, da die meisten wichtigen Verbesserungen nicht auf ältere Versionen zurückportiert werden. Im Zuge der ElastiCache Ausweitung der Verfügbarkeit auf eine neue AWS Region unterstützt ElastiCache (Redis OSS) die beiden jeweils neuesten MAJOR.MINOR-Versionen für die neue Region. Wenn beispielsweise eine neue AWS Region eingeführt wird und die neuesten MAJOR.MINOR-Versionen ElastiCache (Redis OSS) 7.0 und 6.2 sind, unterstützt ElastiCache (Redis OSS) die Versionen 7.0 und 6.2 in der neuen Region. AWS Sobald neuere MAJOR.MINOR-Versionen von ElastiCache (Redis OSS) veröffentlicht werden, ElastiCache wird weiterhin Unterstützung für die neu veröffentlichten Versionen (Redis OSS) hinzugefügt. ElastiCache Weitere Informationen zur Auswahl von Regionen für finden Sie unter Regionen ElastiCache und Verfügbarkeitszonen auswählen.

Wenn Sie ein Upgrade durchführen, das Haupt- oder Nebenversionen umfasst, beachten Sie bitte die folgende Liste, die Verhaltens- und rückwärtsinkompatible Änderungen enthält, die im Laufe der Zeit mit Redis OSS veröffentlicht wurden.

Verhalten und abwärtsinkompatible Änderungen von Redis OSS 7.0

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 7.0.

  • SCRIPT LOAD und SCRIPT FLUSH werden nicht mehr auf Replikate weitergeleitet. Wenn Sie eine gewisse Haltbarkeit für Skripts benötigen, empfehlen wir Ihnen, die Verwendung von Redis OSS-Funktionen in Betracht zu ziehen.

  • Pubsub-Kanäle sind jetzt für neue ACL-Benutzer standardmäßig gesperrt.

  • Der STRALGO-Befehl wurde durch den LCS-Befehl ersetzt.

  • Das Format für ACL GETUSER wurde geändert, sodass alle Felder das standardmäßige Zugriffszeichenfolgemuster anzeigen. Wenn Sie Automatisierung mit ACL GETUSER verwendet haben, sollten Sie überprüfen, ob beide Formate verarbeitet werden.

  • Die ACL-Kategorien für SELECT, WAIT, ROLE, LASTSAVE, READONLY, READWRITE und ASKING haben sich geändert.

  • Der INFO-Befehl zeigt jetzt Befehlsstatistiken pro Unterbefehl und anstatt bei den Container-Befehlen in der obersten Ebene an.

  • Die Rückgabewerte der Befehle LPOP, RPOP, ZPOPMIN und ZPOPMAX haben sich in bestimmten Randfällen geändert. Wenn Sie diese Befehle verwenden, sollten Sie die Versionshinweise überprüfen und bewerten, ob Sie betroffen sind.

  • Die Befehle SORT und SORT_RO erfordern jetzt Zugriff auf den gesamten Schlüsselraum, um die Argumente GET sowie BY verwenden zu können.

Verhalten und abwärtsinkompatible Änderungen in Redis OSS 6.2

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 6.2.

  • Die ACL-Flags der Befehle TIME, ECHO, ROLE und LASTSAVE wurden geändert. Dies kann dazu führen, dass Befehle, die zuvor gestattet waren, abgelehnt werden und umgekehrt.

    Anmerkung

    Keiner dieser Befehle verändert Daten oder gewährt Zugriff darauf.

  • Beim Upgrade von Redis OSS 6.0 wird die Reihenfolge der Schlüssel/Wert-Paare, die von einer Map-Antwort an ein Lua-Skript zurückgegeben werden, geändert. Wenn Ihre Skripte eine Map verwenden redis.setresp() oder zurückgeben (neu in Redis OSS 6.0), sollten Sie die Auswirkungen berücksichtigen, die sich daraus ergeben, dass das Skript bei Upgrades nicht mehr funktioniert.

Verhalten von Redis OSS 6.0 und abwärtsinkompatible Änderungen

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 6.0.

  • Die maximale Anzahl zugelassener Datenbanken wurde von 1,2 Millionen auf 10.000 verringert. Der Standardwert ist 16, und wir raten davon ab, Werte zu verwenden, die viel größer sind, da wir Probleme mit der Leistung und dem Arbeitsspeicher festgestellt haben.

  • Setzen Sie den AutoMinorVersionUpgrade Parameter auf yes, und ElastiCache (Redis OSS) verwaltet das Upgrade der Nebenversion über Self-Service-Updates. Dies wird über Standardkanäle für die Kundenbenachrichtigung über eine Self-Service-Update-Kampagne abgewickelt. Weitere Informationen finden Sie unter Self-Service-Updates unter. ElastiCache

Verhalten und abwärtsinkompatible Änderungen in Redis OSS 5.0

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 5.0.

  • Skripte werden durch Effekte repliziert, statt das Skript auf dem Replikat erneut auszuführen. Dies verbessert im Allgemeinen die Leistung, kann jedoch die Menge der zwischen primären Replikaten und Replikaten replizierten Daten erhöhen. Es gibt eine Option, um zum vorherigen Verhalten zurückzukehren, die nur in ElastiCache (Redis OSS) 5.0 verfügbar ist.

  • Wenn Sie ein Upgrade von Redis OSS 4.0 durchführen, geben einige Befehle in LUA-Skripten Argumente in einer anderen Reihenfolge zurück als in früheren Versionen. In Redis OSS 4.0 ordnete Redis OSS einige Antworten lexographisch an, um die Antworten deterministisch zu machen. Diese Reihenfolge wird nicht angewendet, wenn Skripten durch Effekte repliziert werden.

  • In Redis OSS 5.0.3 und höher verlagert ElastiCache (Redis OSS) bei Instance-Typen mit mehr als 4 vCPUs einen Teil der I/O-Arbeit auf Hintergrundkerne. Dies kann die Leistungsmerkmale von Redis OSS und die Werte einiger Metriken ändern. Weitere Informationen finden Sie unter Welche Metriken sollte ich überwachen?, um zu verstehen, ob Sie ändern müssen, welche Metriken Sie sich ansehen.

Verhalten von Redis OSS 4.0 und abwärtsinkompatible Änderungen

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 4.0.

  • Slow Log protokolliert jetzt zwei zusätzliche Argumente, den Namen und die Adresse des Clients. Diese Änderung sollte abwärtskompatibel sein, sofern Sie sich nicht explizit darauf verlassen, dass jeder Slow-Log-Eintrag 3 Werte enthält.

  • Der Befehl CLUSTER NODES gibt jetzt ein etwas anderes Format zurück, das nicht abwärtskompatibel ist. Wir empfehlen, dass Clients diesen Befehl nicht verwenden, um mehr über die in einem Cluster vorhandenen Knoten zu erfahren, sondern stattdessen CLUSTER SLOTS verwenden.

Vergangenes EOL

Verhalten von Redis OSS 3.2 und abwärtsinkompatible Änderungen

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 3.2.

  • Für diese Version sind keine Kompatibilitätsänderungen erforderlich.

Weitere Informationen finden Sie unter Zeitplan für das Ende des Lebenszyklus der Redis OSS-Versionen.

Verhalten von Redis OSS 2.8 und abwärtsinkompatible Änderungen

Eine vollständige Liste der Änderungen finden Sie in den Versionshinweisen zu Redis OSS 2.8.

  • Ab Redis OSS 2.8.22 wird Redis OSS AOF in (Redis OSS) nicht mehr unterstützt. ElastiCache Wir empfehlen die Verwendung von MemoryDB, wenn Daten dauerhaft gespeichert werden müssen.

  • Ab Redis OSS 2.8.22 unterstützt ElastiCache (Redis OSS) das Anhängen von Replikaten an darin gehostete Primärdateien nicht mehr. ElastiCache Während des Upgrades werden externe Replikate getrennt und sie können keine erneute Verbindung herstellen. Wir empfehlen die Verwendung von clientseitigem Caching, das in Redis OSS 6.0 als Alternative zu externen Replikaten verfügbar ist.

  • Die Befehle TTL und PTTL geben jetzt -2 zurück, wenn der Schlüssel nicht existiert, und -1, wenn er existiert, aber kein zugehöriges Ablaufdatum hat. Redis OSS 2.6 und frühere Versionen gaben in beiden Fällen -1 zurück.

  • SORT mit ALPHA sortiert jetzt nach lokalem Standardgebietsschema, wenn keine STORE-Option verwendet wird.

Weitere Informationen finden Sie unter Zeitplan für das Ende des Lebenszyklus der Redis OSS-Versionen.