Amazon Neptune エンジンバージョン 1.1.1.0.R7 (2023-01-23) - Amazon Neptune

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Neptune エンジンバージョン 1.1.1.0.R7 (2023-01-23)

2023 年 1 月 23 日現在、エンジンバージョン1.1.1.0.R7 は一般にデプロイされています。新しいリリースがすべてのリージョンで利用可能になるまでに数日かかります。

重要

1.1.0.0 より前のバージョンからこのエンジンリリースにアップグレードすると、DB クラスター内のすべてのインスタンスでオペレーティングシステムのアップグレードもトリガーされます。オペレーティングシステムのアップグレード中に発生するアクティブな書き込み要求は処理されないため、アップグレードを開始する前に、一括データロードを含め、アップグレード中のクラスターへのすべての書き込みワークロードを一時停止する必要があります。

アップグレードを正常に完了するには、すべてのアベイラビリティーゾーン (AZ) の各サブネットに、Neptune インスタンスごとに利用可能な IP アドレスが少なくとも 1 つ必要です。例えば、サブネット 1 に 1 つのライターインスタンスと 2 つのリーダーインスタンスがあり、サブネット 2 に 2 つのリーダーインスタンスがある場合、アップグレードを開始する前に、サブネット 1 には少なくとも 3 つの IP アドレスの空きがあり、サブネット 2 には少なくとも 2 つの IP アドレスが空いている必要があります。

アップグレードの開始時に、Neptune は preupgrade に DB クラスターの情報に基づいて自動生成された識別子が続く名前のスナップショットを生成します。このスナップショットには課金はされません。アップグレードプロセス中に問題が発生した場合は、DB クラスターを復元するために使用できます。

エンジンのアップグレード自体が完了すると、古いオペレーティングシステムで新しいエンジンバージョンが一時的に利用可能になりますが、5 分以内にクラスター内のすべてのインスタンスが同時にオペレーティングシステムのアップグレードを開始します。DB クラスターは、この時点で数分間使用できなくなります。アップグレードの完了後に、書き込みワークロードを再開できます。

このプロセスでは、次のイベントが生成されます。

  • クラスターごとのイベントメッセージ。

    • Upgrade in progress: Creating pre-upgrade snapshot [preupgrade-(autogenerated snapshot ID)]

    • Database cluster major version has been upgraded

  • インスタンスごとのイベントメッセージ。

    • Applying off-line patches to DB instance

    • DB instance shutdown

    • Finished applying off-line patches to DB instance

    • DB instance restarted

このエンジンリリースの改良点

  • MERGEOPTIONAL MATCH を含む openCypher クエリのパフォーマンスが向上しました。

  • リテラル値のマップのリストの UNWIND を含む openCypher クエリのパフォーマンスが向上しました。

  • idIN フィルターの付いた openCypher クエリのパフォーマンスが向上しました。例:

    MATCH (n) WHERE id(n) IN ['1', '2', '3'] RETURN n
  • repeatcoalescestoreaggregate など、さまざまな Gremlin 演算子のパフォーマンスの向上と正確性の修正を行いました。

このエンジンリリースで修正された不具合

  • HTTP キープアライブを使用するリクエストが、リクエストが失敗した後に送信された場合に誤ってクローズされる可能性がある openCypher のバグを修正しました。

  • リストまたはマップのリストでパラメータタイプが正しく解釈されないことがあるという openCypher のバグを修正しました。

  • Bolt と SPARQL-JSON でクエリが NULL 値の代わりに文字列 "null" を返す openCypher のバグを修正しました。

  • クエリタイムアウトエラーとメモリ不足エラーに関する openCypher エラーコードとエラーメッセージを修正しました。

  • DFE エンジンの by() トラバーサル時に valueMap() が最適化されない原因となっていた Gremlin のバグを修正しました。

  • デッドロック検出ロジックで、エンジンが応答しなくなることがあった問題を修正しました。

  • 不要な情報がログに記録されたり、特定のフィールドがログから欠落したりする監査ログのバグを修正しました。

このリリースでサポートされるクエリ言語バージョン

DB クラスターをバージョン 1.1.1.0.R7 にアップグレードする前に、プロジェクトが次のクエリ言語バージョンと互換性があることを確認してください。

  • サポートされている最も古いバージョンの Gremlin: 3.5.2

  • サポートされている最も新しいバージョンの Gremlin: 3.5.3

  • openCypher バージョン: Neptune-9.0.20190305-1.0

  • SPARQL バージョン: 1.1

エンジンリリース 1.1.1.0.R7 へのアップグレードパス

エンジンバージョン 1.1.1.0 を実行している場合、クラスターは次のメンテナンス期間中に自動的にこのパッチリリースにアップグレードされます。

このリリースへのアップグレード

重要

1.1.0.0 より前のバージョンからこのエンジンリリースにアップグレードすると、DB クラスター内のすべてのインスタンスでオペレーティングシステムのアップグレードもトリガーされます。オペレーティングシステムのアップグレード中に発生するアクティブな書き込み要求は処理されないため、アップグレードを開始する前に、一括データロードを含め、アップグレード中のクラスターへのすべての書き込みワークロードを一時停止する必要があります。

アップグレードの開始時に、Neptune は preupgrade に DB クラスターの情報に基づいて自動生成された識別子が続く名前のスナップショットを生成します。このスナップショットには課金はされません。アップグレードプロセス中に問題が発生した場合は、DB クラスターを復元するために使用できます。

エンジンのアップグレード自体が完了すると、古いオペレーティングシステムで新しいエンジンバージョンが一時的に利用可能になりますが、5 分以内にクラスター内のすべてのインスタンスが同時にオペレーティングシステムのアップグレードを開始します。DB クラスターはこの時点で約 6 分間使用できなくなります。アップグレードの完了後に、書き込みワークロードを再開できます。

このプロセスでは、次のイベントが生成されます。

  • クラスターごとのイベントメッセージ。

    • Upgrade in progress: Creating pre-upgrade snapshot [preupgrade-(autogenerated snapshot ID)]

    • Database cluster major version has been upgraded

  • インスタンスごとのイベントメッセージ。

    • Applying off-line patches to DB instance

    • DB instance shutdown

    • Finished applying off-line patches to DB instance

    • DB instance restarted

DB クラスターで、このリリースへのアップグレードパスがあるエンジンバージョンを実行している場合は、今すぐアップグレードできます。対象となるクラスターをアップグレードするには、コンソールの DB クラスターオペレーションまたは SDK を使用します。次の CLI コマンドは、適格なクラスターをただちにアップグレードします。

Linux、OS X、Unix の場合:

aws neptune modify-db-cluster \ --db-cluster-identifier (your-neptune-cluster) \ --engine-version 1.1.1.0 \ --apply-immediately

Windows の場合:

aws neptune modify-db-cluster ^ --db-cluster-identifier (your-neptune-cluster) ^ --engine-version 1.1.1.0 ^ --apply-immediately

更新は、DB クラスター内のすべてのインスタンスに同時に適用されます。更新では、DB クラスター内のすべてのインスタンスでデータベースを再起動する必要があるため、20 〜 30 秒から数分のダウンタイムが発生します。その後、DB クラスターの使用を再開できます。

アップグレードの前に必ずテストする

新しいメジャーまたはマイナーバージョンの Neptune エンジンがリリースされたら、アップグレードする前に、まず最初に Neptune アプリケーションをテストしてください。マイナーアップグレードでも、コードに影響する新しい機能や動作が導入される可能性があります。

まず、現在のバージョンのリリースノートページと対象バージョンのリリースノートページを比較して、クエリ言語のバージョンに変更があるか、その他の重大な変更がないかを確認します。

本番 DB クラスターをアップグレードする前に新しいバージョンをテストする最善の方法は、本番クラスターをクローンして、クローンで新しいエンジンバージョンを実行することです。その後、本番 DB クラスターに影響を与えずに、クローンに対してクエリを実行できます。

アップグレードの前に必ずスナップショットを手動で作成してください

アップグレードの前に必ず DB クラスターの手動スナップショットを作成することを強く推奨します。自動スナップショットを作成しても短期的な保護しか得られませんが、手動スナップショットは明示的に削除するまで使用できます。

場合によっては、Neptune がアップグレードプロセスの一環として手動スナップショットを作成することもありますが、これを頼りにすべきではなく、どのような場合でも独自の手動スナップショットを作成する必要があります。

DB クラスターをアップグレード前の状態に戻す必要がないことが確実な場合は、自分で作成した手動スナップショットと、Neptune が作成した手動スナップショットを明示的に削除できます。Neptune が手動スナップショットを作成する場合、その名前は preupgrade で始まり、その後に DB クラスターの名前、ソースエンジンのバージョン、ターゲットエンジンのバージョン、および日付が続きます。

注記

保留中のアクションの処理中にアップグレードを試みた場合、次のようなエラーが発生する可能性があります。

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.

このエラーが発生した場合は、保留中のアクションが終了するのを待つか、すぐにメンテナンスウィンドウをトリガーして、前回のアップグレードを完了させます。

お使いのエンジンバージョンのアップグレードの詳細については、Amazon Neptune DB クラスターのメンテナンス を参照してください。ご質問やご不明点がございましたら、コミュニティフォーラムや AWS プレミアムサポートから AWS サポートチームにお問い合わせください。