メインコンテンツに移動

Amazon RDS for PostgreSQL

Amazon RDS for PostgreSQL のよくある質問

Amazon RDS for PostgreSQL のよくある質問

すべて開く

はい。Amazon RDS for PostgreSQL 用の Database Savings Plans を購入すると、1 年間にわたって一定量の使用を確約することで、コストを最大 20% 削減できます。 対象となる使用量に関する追加情報は、Database Savings Plans の料金ページでご確認いただけます。

Amazon RDS for PostgreSQL は現在、PostgreSQL 13、14、15、16、17 をサポートしています。また、RDS for PostgreSQL は、Amazon RDS Extended Support を通じて PostgreSQL 11 と 12 もサポートします。詳細については、Amazon RDS ユーザーガイドをご覧ください。

サポートされている拡張機能の一覧については、Amazon RDS ユーザーガイドで確認できます。他の拡張機能へのサポートをリクエストする場合は、拡張機能名とユースケースを記載したメールを rds-postgres-extensions-request@amazon.com までお送りください。

RDS for PostgreSQL では、PostgreSQL DB インスタンスのアクティビティのログを記録するために複数のパラメータがサポートされています。詳細については、 Amazon RDS ユーザーガイドを参照してください。

はい。RDS for PostgreSQL インスタンスの制限事項については、Amazon RDS ユーザーガイドをお読みください。

RDS for PostgreSQL のコンテキストでは、バージョン番号は以下のように整理されています: PostgreSQL バージョン = X.Y-R(n)。

Amazon RDS では、バージョン番号の最初の部分が変更されると、バージョン変更がメジャーであると判断されます。例: 15.9 から 17.1 への変更。

そのリリースのバージョン番号のうち 2 番目の部分が変更されると、バージョン変更がマイナーであると判断されます。例: 17.1 から 17.2 への変更。

R(n) は、新機能、パフォーマンスの向上、バグ修正を含む可能性のあるマイナーバージョンへのリリース時のフォローを示します。マイナーバージョンには R(n) リリースがある場合とない場合があります。例: 17.1 から 17.1-R2 または 17.1-R3 への変更

詳細については、PostgreSQL バージョニングポリシーを参照してください。

はい。バージョニングガイダンスについては、Amazon RDS のよくある質問を参照してください。

Trusted Language Extensions for PostgreSQL

すべて開く

Trusted Language Extensions (TLE) for PostgreSQL により、デベロッパーは高パフォーマンスの拡張機能を構築して、Amazon RDS で安全に実行できます。 これにより、TLE は市場投入までの時間を短縮し、データベース管理者が本番データベースワークロードで使用するためのカスタムコードやサードパーティーコードを認証する負担を軽減します。拡張機能がニーズを満たすか判別し次第、すぐに進めることができます。TLE を使用することで、独立系ソフトウェアベンダー (ISV) は、Amazon RDS で実行しているお客様に新しい PostgreSQL 拡張機能を提供できます。

PostgreSQL の拡張機能では、同じプロセス空間で実行されるため、高いパフォーマンスを発揮します。しかし、拡張機能には、データベースをクラッシュさせるようなソフトウェアの欠陥があるかもしれません。 

TLE for PostgreSQL は、このリスクを軽減するために複数のレイヤーを提供します。TLE は、システムリソースへのアクセスを制限するように設計されています。rds_superuser ロールは、特定の拡張機能のインストールを許可するユーザーを決定することができます。ただし、これらの変更は、TLE API を通じてのみ可能です。TLE は、拡張機能の欠陥の影響を単一のデータベース接続に限定するように設計されています。これらの安全対策に加えて、TLE は、rds_superuser ロールを持つ DBA が、拡張機能をインストールできるユーザーをきめ細かくオンラインで制御できるように設計されており、拡張機能を実行するための権限モデルを作成することが可能です。

十分な権限を持つユーザーのみが、TLE 拡張機能の「CREATE EXTENSION」コマンドを使用して実行および作成することができるようになります。DBA は、データベースの内部動作を変更し、通常、昇格した特権を必要とする、より高度な拡張機能に必要な「PostgreSQL フック」を許可リスト化することもできます。

TLE は、バージョン 14.5 以降の Amazon RDS on PostgreSQL でご利用いただけます。PostgreSQL 拡張機能として実装され、サポートされている他の拡張機能と同様に rds_superuser ロールからアクティベートされます。

TLE は Amazon RDS の PostgreSQL 14.5 以降で実行できます。

Amazon RDS をご利用のお客様は、TLE を追加費用なしでご利用いただけます。

Aurora と Amazon RDS は、85 以上の PostgreSQL 拡張機能のキュレートされたセットをサポートしています。AWS は、AWS 責任共有モデルに基づいて、これらの拡張機能それぞれのセキュリティリスクを管理しています。TLE for PostgreSQL を実装する拡張機能は、このセットに含まれています。お客様が書いた、またはサードパーティーのソースから入手して TLE にインストールした拡張機能は、お客様のアプリケーションコードの一部とみなされます。TLE 拡張機能を使用するアプリケーションのセキュリティは、お客様の責任で行ってください。

ビットマップ圧縮や差分プライバシーなど (個人のプライバシーを保護する、一般にアクセス可能な統計クエリなど) のデベロッパー機能を構築することができます。

 TLE は現在、JavaScript、Perl、Tcl、PL/pgSQL、および SQL での拡張機能の作成をサポートしていました。 

rds_superuser ロールによって TLE for PostgreSQL が有効になると、psql などの任意の PostgreSQL クライアントから SQL CREATE EXTENSION コマンドを使用して TLE 拡張機能をデプロイできます。これは、PL/pgSQL や PL/Perl などの手続き言語で記述されたユーザー定義関数を作成する方法と似ています。TLE 拡張機能をデプロイする権限と特定の拡張機能を使用する権限を持つユーザーを制御できます。

TLE for PostgreSQL は、TLE API を介してのみ PostgreSQL データベースにアクセスします。TLE がサポートする信頼できる言語には、PostgreSQL サーバープログラミングインターフェイス (SPI) の全機能と、チェックパスワードフックを含む PostgreSQL フックのサポートが含まれます。

TLE for PostgreSQL プロジェクトの詳細については、公式の TLE GitHub ページで確認できます。

Amazon RDS ブルー/グリーンデプロイ

すべて開く

RDS for PostgreSQL では、ブルー/グリーンデプロイはバージョン 11.1 以降のすべてのメジャーバージョンとマイナーバージョンでサポートされています。詳細については、Amazon RDS ブルー/グリーンデプロイメントでサポートされているリージョンと DB エンジンを参照してください。 

Amazon RDS ブルー/グリーンデプロイを使用すると、より安全、簡単、高速にデータベースの更新ができます。ブルー/グリーンデプロイは、メジャーバージョンまたはマイナーバージョンのデータベースエンジンのアップグレード、オペレーティングシステムの更新、論理レプリケーションを中断しないグリーン環境でのスキーマの変更 (テーブルの最後に新しい列を追加するなど)、またはデータベースパラメーター設定の変更などのユースケースに最適です。

ブルー/グリーンデプロイを使用すると、1 回のスイッチオーバーで複数のデータベースを同時に更新できます。これにより、セキュリティパッチを最新の状態に保ち、データベースのパフォーマンスを向上させ、短期間で予測可能なダウンタイムで新しいデータベース機能にアクセスできます。

Amazon RDS ブルー/グリーンデプロイでは、メジャー/マイナーバージョンアップグレード、スキーマの変更、インスタンスのスケーリング、エンジンパラメータの変更、メンテナンスアップデートなど、より安全でシンプル、かつ迅速なデータベース変更を行うことが可能です。

Amazon RDS ブルー/グリーンデプロイでは、ブルー環境は現在の本番環境です。グリーン環境は、スイッチオーバー後に新しい本番環境となるステージング環境です。

Amazon RDS ブルー/グリーンデプロイがスイッチオーバーを開始すると、スイッチオーバーが完了するまで、ブルーとグリーンの両方の環境への書き込みがブロックされます。スイッチオーバーの間、ステージング環境 (グリーン環境) は本番システムに追いつき、ステージング環境と本番環境の間でデータの一貫性を確保します。

本番環境とステージング環境が完全に同期されると、ブルー/グリーンデプロイは、新しく昇格させられる本番環境にトラフィックをリダイレクトすることで、ステージング環境を本番環境として昇格させます。ブルー/グリーンデプロイは、スイッチオーバー完了後にグリーン環境への書き込みを可能にするよう設計されており、スイッチオーバープロセス中のデータ損失はゼロになります。

ブルー環境がセルフマネージド論理レプリカまたはサブスクライバーの場合、スイッチオーバーはブロックされます。最初にブルー環境へのレプリケーションを停止し、スイッチオーバーを続行してからレプリケーションを再開することをお勧めします。対照的に、ブルー環境がセルフマネージド論理レプリカまたはパブリッシャーのソースである場合は、スイッチオーバーを続けることができます。ただし、スイッチオーバー後にグリーン環境からレプリケートするには、セルフマネージドレプリカを更新する必要があります。

Amazon RDS ブルー/グリーンデプロイでは、古い本番環境は削除されません。必要に応じて、追加の検証やパフォーマンス/リグレッションのテストのためにアクセスすることができます。古い本番環境が不要になった場合は、削除することができます。古い本番インスタンスでは、それを削除するまで標準料金が発生します。

Amazon RDS ブルー/グリーンデプロイのスイッチオーバーガードレールは、スイッチオーバー前にグリーン環境が追いつくまで、ブルー環境とグリーン環境での書き込みをブロックします。ブルー/グリーンデプロイは、ブルーとグリーンの環境におけるプライマリとレプリカのヘルスチェックも行います。レプリケーションのヘルスチェックも行います。例えば、レプリケーションが停止していないか、エラーが発生していないか、などを確認します。

ブルー環境とグリーン環境の間で長時間実行されているトランザクションを検出します。最大許容ダウンタイムは最短で 30 秒から指定でき、進行中のトランザクションがこれを超えると、スイッチオーバーがタイムアウトします。

いいえ、Amazon RDS ブルー/グリーンデプロイは、Amazon RDS Proxy、クロスリージョンリードレプリカ、またはカスケードリードレプリカをサポートしていません。

いいえ、現時点では、Amazon RDS ブルー/グリーンデプロイを使用して変更をロールバックすることはできません。

DevOps Guru for RDS

すべて開く

Amazon DevOps Guru for RDS は、データベースのパフォーマンスと運用上の問題を自動的に検出および診断するように設計された、Amazon RDS for PostgreSQL (Amazon Aurora を含む) 向けの ML を利用した新機能であり、数日かかっていた問題を数分以内に解決できます。

Amazon DevOps Guru for RDS は、Amazon DevOps Guru の機能であり、すべての Amazon RDS エンジンと他の数十のリソースタイプの運用およびパフォーマンスに関する問題を検出するように設計されています。DevOps Guru for RDS は、DevOps Guru の機能を拡張して、リソースの過剰使用や特定の SQL クエリの誤動作など、Amazon RDS for PostgreSQL のさまざまなデータベース関連の問題を検出、診断、および修正します。

問題が発生すると、Amazon DevOps Guru for RDS はすぐにデベロッパーと DevOps エンジニアに通知するように設計されており、診断情報、問題の範囲の詳細、およびお客様がデータベースに関するパフォーマンスのボトルネックと運用上の問題を迅速に解決するのに役立つインテリジェントな修復についてレコメンデーションを提供します。

Amazon DevOps Guru for RDS は、手動作業を行わずに、時間 (数時間から数日かかっていたものを数分に) を短縮して、リレーショナルデータベースのワークロードで見つけにくいパフォーマンスのボトルネックを検出して解決するように設計されています。

すべての Amazon RDS for PostgreSQL データベースで DevOps Guru for RDS を有効にすると、ワークロードのパフォーマンスの問題が自動的に検出されます。その後、各問題についてアラートが送信され、検出結果の説明が提供され、問題を解決するためのアクションが推奨されます。

DevOps Guru for RDS を使用すれば、専門家以外のユーザーがデータベースを管理しやすくなり、データベースの専門家がさらに多くのデータベースを管理できるように支援します。

Amazon DevOps Guru for RDS は、ML を使用して、Amazon RDS Performance Insights (PI) によって収集されたテレメトリデータを分析します。DevOps Guru for RDS がデータベースに保存されているデータを分析で使用することはありません。DevOps Guru for RDS は、ルールと ML ベースの手法を組み合わせて PI テレメトリにおける問題のあるパターンを探し、そのようなパターンが検出されるとユーザーに警告します。

DevOps Guru for RDS の使用を開始するにために必要なのは、Amazon RDS コンソールで Performance Insights が有効になっていることを確認し、Amazon RDS for PostgreSQL データベースのために DevOps Guru を有効にすることだけです。DevOps Guru を使用すれば、分析カバレッジの境界を AWS アカウント全体として選択することも、DevOps Guru に分析させる特定の AWS CloudFormation スタックを指定することも、AWS タグを使用して DevOps Guru に分析させるリソースグループを作成することもできます。

Amazon DevOps Guru for RDS は、ロックパイルアップ、接続ストーム、SQL リグレッション、CPU と I/O の競合、メモリの問題、誤って設定されたパラメータなど、アプリケーションサービスの品質に影響を与える可能性のあるさまざまなパフォーマンスの問題を特定できます。

Amazon RDS Performance Insights は、Amazon RDS データベースパフォーマンスメトリクスを収集し、その視覚的な表現を提示するデータベースパフォーマンスのチューニングとモニタリングを行う機能で、データベースの状態をすばやく評価し、いつどこに措置を講じたらよいかを判断するのに役立ちます。Amazon DevOps Guru for RDS は、これらのメトリクスをモニタリングし、データベースでパフォーマンスの問題が発生していることを検出します。さらに、メトリクスを分析して、何が問題で、何ができるかを通知するように設計されています。