Amazon Neptune Engine Version 1.2.1.1 (11.03.2024) - Amazon Neptune

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.

Amazon Neptune Engine Version 1.2.1.1 (11.03.2024)

Ab dem 11.03.2022 wird die Engine-Version 1.2.1.1 allgemein eingesetzt. Bitte beachten Sie, dass es mehrere Tage dauert, bis eine neue Version in jeder Region verfügbar ist.

Anmerkung

Bei einem Upgrade von einer Engine-Version vor 1.2.0.0:

  • Mit der Engine-Version 1.2.0.0 wurde ein neues Format für benutzerdefinierte Parametergruppen und benutzerdefinierte Cluster-Parametergruppen eingeführt. Wenn Sie also von einer Engine-Version vor 1.2.0.0 auf Engine-Version 1.2.0.0 oder höher aktualisieren, müssen Sie alle vorhandenen benutzerdefinierten Parametergruppen und benutzerdefinierten Cluster-Parametergruppen mithilfe der Parametergruppenfamilie neptune1.2 neu erstellen. In früheren Versionen wurde die Parametergruppenfamilie neptune1 verwendet und diese Parametergruppen funktionieren nicht mit Version 1.2.0.0 und höher. Weitere Informationen finden Sie unter Amazon-Neptune-Parametergruppen.

  • Mit der Engine-Version 1.2.0.0 wurde auch ein neues Format für Undo-Protokolle eingeführt. Daher müssen alle Undo-Logs, die von einer früheren Engine-Version erstellt wurden, gelöscht werden und die UndoLogsListSize CloudWatch Metrik muss auf Null fallen, bevor ein Upgrade von einer Version vor 1.2.0.0 gestartet werden kann. Wenn beim Versuch, ein Update zu starten, zu viele Undo-Protokolldatensätze (200.000 oder mehr) vorhanden sind, kann es beim Upgrade-Versuch zu einer Zeitüberschreitung kommen, während auf den Abschluss des Löschvorgangs der Undo-Protokolle gewartet wird.

    Sie können die Löschgeschwindigkeit beschleunigen, indem Sie die Writer-Instance des Clusters aktualisieren, in der das Löschen stattfindet. Wenn Sie dies tun, bevor Sie versuchen, das Upgrade durchzuführen, kann die Anzahl der Undo-Logs vor dem Start reduziert werden. Wenn Sie die Größe des Writers auf einen 24XL-Instance-Typ erhöhen, kann sich Ihre Löschrate auf mehr als eine Million Datensätze pro Stunde erhöhen.

    Wenn die UndoLogsListSize CloudWatch Metrik extrem umfangreich ist, kann Ihnen die Eröffnung eines Support-Falls dabei helfen, zusätzliche Strategien zu finden, um sie zu reduzieren.

  • Schließlich wurde mit Version 1.2.0.0 eine bahnbrechende Änderung eingeführt, die sich auf früheren Code auswirkt, der das Bolt-Protokoll mit IAM-Authentifizierung verwendete. Ab Version 1.2.0.0 benötigt Bolt einen Ressourcenpfad für die IAM-Signatur. In Java könnte das Festlegen des Ressourcenpfads so aussehen: request.setResourcePath("/openCypher"));. In anderen Sprachen kann /openCypher an den Endpunkt-URI angehängt werden. Beispiele finden Sie unter Verwenden des Bolt-Protokolls.

Verbesserungen in dieser Engine-Version

Allgemeine Verbesserungen

Neptune hat die in profile/explain angezeigte Warnung verbessert.

Verbesserungen bei Gremlin
  • Die Berechnung der DFE-Statistiken wurde verbessert, um sehr hohe NCUs einer serverlosen Instanz zu vermeiden.

  • Verbesserung der Gremlin-Leistung für WITHIN.

In diesem Engine-Version behobene Fehler

Korrekturen für Gremlin
  • Fehlerkorrekturen bei der Bestellung des Gremlin DFE-Engine-Abfrageplans.

  • Bugfix mit einem out-of-memory Gremlin-Fehler, der ursprünglich als gemeldet wurde. InternalFailureException

  • Bugfix, bei dem der IAM-ARN bei einer erfolgreichen ersten Websocket-Verbindungsanfrage nicht im Audit-Log vorhanden war.

  • Bugfix für Gremlin-Abfragen mit aktivierter TinkerPop Sitzung, wenn Abfragen in einer Sitzung fehlschlagen, auch wenn sie alle schreibgeschützt sind und eine Verbindung zu einer Reader-Instanz herstellen.

OpenCypher-Korrekturen
  • Fehlerkorrekturen in der OpenCypher SET-Klausel, um die Einstellung eines nicht variablen Ausdrucks zu ermöglichen (d. h.: match (n:Test) set (Fall, wenn n.prop = 2, dann n end) .prop = 3 return n.prop.

  • Bugfix für fehlgeschlagene OpenCypher-Abfragen mit Aggregation und Sortierung nach.

  • Der UNDOWN einer großen Liste mit statischen Maps wurde verbessert.

  • Fehlerbehebung bei der OpenCypher MERGE-Abfrage, die eine benutzerdefinierte ID mit doppelten Werten verwendet.

Fehlerkorrekturen für SPARQL
  • Fehlerkorrekturen im SPARQL DFE-Abfrageplaner.

  • Bugfix für SPARQL bei Verwendung mit den Schlüsselwörtern BIND und OPTIONAL.

In dieser Version unterstützte Versionen in Abfragesprache

Bevor Sie einen DB-Cluster auf Version 1.2.1.1 aktualisieren, stellen Sie sicher, dass Ihr Projekt mit diesen Versionen in Abfragesprachen kompatibel ist:

  • Die älteste unterstützte Version von Gremlin: 3.6.2

  • Die neueste unterstützte Version von Gremlin: 3.6.2

  • openCypher-Version: Neptune-9.0.20190305-1.0

  • SPARQL-Version: 1.1

Aktualisieren Sie die Pfade auf Engine-Version 1.2.1.1

Sie können von der Engine-Version 1.2.0.0 oder höher auf diese Version aktualisieren.

Upgrade auf diesen Release

Wenn auf einem DB-Cluster eine Engine-Version ausgeführt wird, für die es einen Upgrade-Pfad zu dieser Version gibt, kann sie jetzt aktualisiert werden. Sie können jeden geeigneten Cluster mithilfe der DB-Cluster-Operationen auf der Konsole oder mithilfe des SDK aktualisieren. Mit dem folgenden CLI-Befehl wird ein geeignetes Cluster sofort aktualisiert:

Für Linux, OS X oder Unix:

aws neptune modify-db-cluster \ --db-cluster-identifier (your-neptune-cluster) \ --engine-version 1.2.1.1 \ --allow-major-version-upgrade \ --apply-immediately

Für Windows:

aws neptune modify-db-cluster ^ --db-cluster-identifier (your-neptune-cluster) ^ --engine-version 1.2.1.1 ^ --allow-major-version-upgrade ^ --apply-immediately

Statt --apply-immediately können Sie --no-apply-immediately angeben. Um ein Upgrade auf eine Hauptversion durchzuführen, ist der allow-major-version-upgrade Parameter erforderlich. Stellen Sie außerdem sicher, dass Sie die Engine-Version angeben, da Ihre Engine sonst möglicherweise auf eine andere Version aktualisiert wird.

Wenn Ihr Cluster eine benutzerdefinierte Cluster-Parametergruppe verwendet, müssen Sie diesen Parameter einschließen, um ihn zu anzugeben:

--db-cluster-parameter-group-name (name of the custom DB cluster parameter group)

Ebenso sollte für Instances im Cluster, die eine benutzerdefinierte DB-Parametergruppe verwenden, dieser Parameter eingeschlossen werden, um ihn zu spezifizieren:

--db-instance-parameter-group-name (name of the custom instance parameter group)

Testen Sie immer vor dem Upgrade

Wenn eine neue Haupt- oder Nebenversion der Neptune-Engine veröffentlicht wird, testen Sie Ihre Neptune-Anwendungen immer zuerst dafür, bevor Sie sie dazu aktualisieren. Selbst ein Nebenversions-Upgrade könnte neue Features oder Verhaltensweisen einführen, die sich auf Ihren Code auswirken können.

Vergleichen Sie zunächst die Seiten mit den Versionshinweisen Ihrer aktuellen Version mit denen der Zielversion, um festzustellen, ob es Änderungen an den Versionen der Abfragesprache oder andere wichtige Änderungen geben wird.

Die beste Methode, eine neue Version zu testen, bevor Sie Ihren Produktions-DB-Cluster aktualisieren, besteht darin, den Produktions-Cluster zu klonen, so dass auf dem Klon die neue Engine-Version ausgeführt wird. Sie können dann Abfragen auf dem Klon ausführen, ohne dass der Produktions-DB-Cluster davon betroffen wird.

Erstellen Sie vor einem Upgrade immer einen manuellen Snapshot

Bevor Sie ein Upgrade durchführen, wird dringend empfohlen, immer einen manuellen Snapshot Ihres DB-Clusters zu erstellen. Ein automatischer Snapshot bietet nur kurzfristigen Schutz, wohingegen ein manueller Snapshot verfügbar bleibt, bis Sie ihn explizit löschen.

In bestimmten Fällen erstellt Neptune im Rahmen des Upgrade-Prozesses einen manuellen Snapshot für Sie, aber Sie sollten sich nicht darauf verlassen und in jedem Fall Ihren eigenen manuellen Snapshot erstellen.

Wenn Sie sicher sind, dass Sie Ihren DB-Cluster nicht auf den Zustand vor dem Upgrade zurücksetzen müssen, können Sie den manuellen Snapshot, den Sie selbst erstellt haben, sowie den manuellen Snapshot, den Neptune möglicherweise erstellt hat, explizit löschen. Wenn Neptune einen manuellen Snapshot erstellt, hat dieser einen Namen, der mit preupgrade beginnt, gefolgt vom Namen Ihres DB-Clusters, der Quell-Engine-Version, der Ziel-Engine-Version und dem Datum.

Anmerkung

Wenn Sie versuchen, ein Upgrade durchzuführen, während eine ausstehende Aktion ausgeführt wird, kann ein Fehler wie der folgende auftreten:

We're sorry, your request to modify DB cluster (cluster identifier) has failed. Cannot modify engine version because instance (instance identifier) is running on an old configuration. Apply any pending maintenance actions on the instance before proceeding with the upgrade.

Wenn dieser Fehler auftritt, warten Sie, bis die ausstehende Aktion abgeschlossen ist, oder starten Sie sofort ein Wartungsfenster, damit das vorherige Upgrade abgeschlossen werden kann.

Weitere Informationen zum Upgraden Ihrer Engine-Version finden Sie unter Warten eines Amazon-Neptune-DB-Clusters. Wenn Sie Fragen oder Bedenken haben, steht Ihnen das AWS Support-Team in den Community-Foren und über den AWS Premium-Support zur Verfügung.