Amazon Relational Database Service RDSは、Amazon Aurora MySQL-Compatible Edition、Amazon Aurora PostgreSQL-Compatible Edition 、 MySQL 、MariaDB、PostgreSQL、Oracle 、Microsoft SQL Server の7つのデータベースエンジンから選択できる、マネージドリレーショナルデータベースサービスです。 つまり、既存のデータベースで現在既に使用しているコード、アプリケーション、およびツールを Amazon RDS で使用できます。Amazon RDS はプロビジョニング、パッチの適用、バックアップ、リカバリ、障害検知、リペアなど、データベースのルーティンタスクを処理します。
Amazon RDS ではレプリケーションが簡単に使用でき、本番ワークロードの可用性と信頼性が向上します。マルチ AZ 配置オプションを使用すると、ミッションクリティカルなワークロードを運用するときの可用性が高まります。プライマリデータベースから、同期レプリケートされたセカンダリデータベースに自動的にフェイルオーバーできます。リードレプリカを使うと、読み込み負荷の高いデータベースワークロードに単一データベースデプロイのキャパシティーが対応しきれない場合に、スケールアウトできます。
AWS のすべてのサービスと同様に、初期費用は不要です。使用したリソースに対してのみ支払いが発生します。
管理負担を軽減
AWS マネジメントコンソール、Amazon RDS コマンドラインインターフェイス、またはシンプルな API コールを使用して、本番環境に対応したリレーショナルデータベースの機能に数分でアクセスできます。
Amazon RDS データベースインスタンスは、選択したエンジンとクラスに適したパラメータと設定で、設定済みです。数分のうちにデータベースインスタンスを作成し、アプリケーションを接続できます。DB パラメータグループではデータベースの厳密な管理および微調整が可能です。
Amazon RDS ブルー/グリーンデプロイを使用すると、Aurora MySQL-Compatible Edition、Amazon RDS for MySQL、Amazon RDS for MariaDB でデータを失うことなく、より安全、簡単、高速にデータベースの更新ができます。ブルー/グリーンデプロイは、いくつかのステップで、本番環境をミラーリングし、論理レプリケーションを使用して 2 つの環境を同期するステージング環境を作り出します。本番稼働用ワークロードに影響を与えずに、メジャー/マイナーバージョンのアップグレード、スキーマの変更、およびパラメータ設定の変更などの変更ができます。
ステージング環境を昇格させると、ブルー/グリーンデプロイは、スイッチオーバーが完了するまで、ブルーとグリーンの両方の環境への書き込みがブロックされます。ブルー/グリーンデプロイは、内蔵のスイッチオーバーガードレールにより、最大許容ダウンタイムを超えた場合のタイムアウト、レプリケーションエラーの検出、インスタンスの健全性のチェックなどを行います。
Amazon RDS では、デプロイで使用するリレーショナルデータベースソフトウェアに最新のパッチが適用され、常に最新の状態が維持されています。データベースインスタンスにパッチを適用するタイミングと条件を指定することもできます。
Amazon RDS では、お客様のデータベースインスタンスの設定と使用率メトリクスを分析して、ベストプラクティスのガイダンスを提供します。レコメンデーションには、データベースエンジンのバージョン、ストレージ、インスタンスタイプ、ネットワークなどの分野が含まれます。利用可能なレコメンデーションを確認し、推奨されたアクションを直ちに実行することも、次回のメンテナンス時間帯に実行をスケジュール設定することも、何も行わずに終了することもできます。
パフォーマンス
Amazon RDS 汎用ストレージは SSD タイプのストレージオプションで、プロビジョニングされた容量 (GB) あたり 3 IOPS の安定したベースラインパフォーマンスを実現し、最大 3,000 IOPS までバーストする機能を備えています。このストレージタイプは、幅広いデータベースのワークロードに適しています。
Amazon RDS プロビジョンド IOPS ストレージは、高速かつ予測可能な一貫した I/O パフォーマンスを提供するよう設計された SSD ベースのストレージオプションです。データベースインスタンス作成時に IOPS レートを指定すると、Amazon RDS はデータベースインスタンスが指定した IOPS レートを常に維持するようプロビジョニングします。このストレージタイプは I/O 負荷の高いトランザクション (OLTP) データベースのワークロード向けに最適化されています。データベースインスタンスごとに最大 256,000 IOPS をプロビジョニングできますが、実際に実装される IOPS はデータベースのワークロード、インスタンスタイプ、データベースエンジンの選択によって変化します。
Amazon RDS Optimized Writes は、AWS Nitro Systemorn Write Prevention Feature 上に構築されており、RDS for MySQL の書き込みトランザクションにおけるスループットは、追加コストなしで最大 2 倍向上します。Optimized Writes は、16 KiB のデータページを 1 ステップで安全に書き込みすることができます。 Optimized Writes は、特に、電子決済、金融取引、オンラインゲームなど、書き込みの多いデータベースワークロードを伴うユーザーにとって役立ちます。
Amazon RDS Optimized Reads は、Amazon RDS for MySQL およびAmazon RDS for MariaDB においてクエリ処理を最大 2 倍の速度を実現し、より高速なデータベースパフォーマンスを追加費用なしで提供するために設計されています。Optimized Reads は、ソート、ハッシュ集計、高負荷結合、共通テーブル式 (CTE) を必要とするクエリなど、一時テーブルを利用する複雑なクエリ処理を高速化されます。Optimized Reads は、ホストサーバーに物理的に接続されているNVMeベースのインスタンスストレージにテンポラリテーブルを配置することで、クエリの速度を向上させます。
スケーラビリティ
最大 32 vCPU および RAM 244 GiB までの範囲でコンピューティングリソースとメモリリソースをスケールし、デプロイをパワーアップまたはパワーダウンすることができます。通常、コンピューティングのスケーリングは数分以内に完了します。
ストレージ要件の拡大に合わせて、ストレージを追加でプロビジョニングできます。Amazon Aurora エンジンは、データベースストレージのニーズが増大するのに合わせて、最大 64 TB (またはユーザーによって定義された最大値) までデータベースのボリュームサイズを自動的に拡張します。MySQL、MariaDB、Oracle、PostgreSQL エンジンでは、稼働中にストレージを最大 64 TB までスケールアップできます。また SQLサーバ最大 16 TB までサポートします。ストレージは、使用中にダウンタイムの発生なしに拡張できます。
リードレプリカを使用すれば、読み取り頻度の高いデータベースのワークロードに対して、単一 DB インスタンスキャパシティーの制約を超えて伸縮自在にスケールアウトをより簡単におこなうことができます。特定のソース DB インスタンスのレプリカを複数作成し、アプリケーションの大容量読み取りトラフィックを複数のデータコピーから提供することにより、全体の読み込みスループットを向上させることができます。リードレプリカは Amazon RDS for MySQL、MariaDB、PostgreSQL、Oracle、Amazon Aurora で利用できます。
可用性と耐久性
Amazon RDS の自動バックアップ機能によって、データベースインスタンスのポイントインタイムリカバリが可能になります。Amazon RDS は、お客様のデータベースとトランザクションログをバックアップし、これらをユーザーが指定した保持期間格納します。これによって、保持期間内の任意の時点 (最大 5 分前まで) に遡ってデータベースインスタンスを復元できます。自動バックアップの保持期間は、最大 35 日間まで設定できます。
データベースのスナップショットは Amazon S3 に保存されたインスタンスのユーザー主導型のバックアップで、明示的に削除するまで保持されます。必要に応じて、データベーススナップショットから新しいインスタンスを作成できます。 データベーススナップショットはフルバックアップとして動作しますが、追加のストレージ使用分に対してのみ課金されます。
Amazon RDS マルチ AZ 配置は、データベースインスタンスの可用性と持続性を高め、プロダクションデータベースのワークロードに最適です。マルチ AZ データベースインスタンスをプロビジョニングすると、Amazon RDS は異なるアベイラビリティーゾーン (AZ) のスタンバイインスタンスにデータを複製します。
Amazon RDS では、デプロイしたコンピューティングインスタンスにハードウェア障害が発生した場合、自動的に交換されます。
セキュリティ
Amazon RDS では、AWS Key Management Service (KMS) で管理するキーを使って、データベースを暗号化できます。Amazon RDS 暗号化を使用して実行するデータベースインスタンスでは、基盤となるストレージに保存されるデータが、自動バックアップ、リードレプリカ、スナップショットと同様に暗号化されます。
Amazon RDS は、SQL Server および Oracle の Transparent Data Encryption をサポートします。Oracle の Transparent Data Encryption は、AWS CloudHSM と統合されています。これにより、AWS クラウドにあるシングルテナントの Hardware Security Module (HSM) アプライアンスで安全に暗号化キーを生成、保存、管理できます。
Amazon RDS は、転送中のデータを保護する SSL に対応しています。
AWS では、データベースインスタンスを Amazon VPC で実行することを推奨します。これによりデータベースを独自の仮想ネットワークに隔離し、業界標準の暗号化 IPsec VPN を使用してオンプレミスの IT インフラストラクチャに接続できます。ファイアウォールを設定して、データベースインスタンスへのネットワークアクセスを制御できます。
Amazon RDS は AWS Identity and Access Management (IAM) と統合されており、データベースインスタンスからスナップショット、パラメータグループ、オプショングループに至るまで、AWS IAM ユーザーおよびグループが特定の Amazon RDS リソースで実行可能なアクションを制限できます。Amazon RDS リソースにタグを付けて、同じタグおよび関連付けられた値を持つリソースグループで IAM ユーザーおよびグループが実行可能なアクションを制限できます。例えば、開発者が "Development" データベースインスタンスを変更できるものの、"Production" データベースインスタンスを変更できるのはデータベース管理者のみにするように IAM ルールを設定できます。
管理性
Amazon RDS はデータベースインスタンスに Amazon CloudWatch のメトリクスを提供します。追加料金はかかりません。RDS マネジメントコンソールを使用して、コンピューティング/メモリ/ストレージキャパシティー利用率、I/O アクティビティ、インスタンス接続など、主要なオペレーションメトリクスを表示できます。Amazon RDS では、50 CPU を超えるメモリ、ファイルシステム、ディスク I/O メトリクスにアクセスできる拡張モニタリング、Performance Insights という、パフォーマンスの問題を簡単に検出するための使いやすいツールを提供します。
Amazon RDS は Amazon SNS を使用して、E メールまたは SMS テキストメッセージでデータベースイベントを通知します。AWS マネジメントコンソールまたは Amazon RDS API を使用して、データベースインスタンスに関連する 40 種類以上ものデータベースイベントを登録できます。
AWS Config と統合された Amazon RDS では、コンプライアンスに対応しており、パラメータグループ、サブネットグループ、スナップショット、セキュリティグループ、イベントサブスクリプションといった DB インスタンス構成内容の変更の記録と監査によってセキュリティが強化されます。
低コスト
Amazon RDS のご利用にあたり、初期費用は不要です。作成したデータベースインスタンス 1 つごとに月額料金が発生します。また、不要になったデータベースインスタンスは簡単に削除できます。詳細については、Amazon RDS インスタンスタイプページおよび Amazon RDS の料金ページをご覧ください。
Amazon RDS リザーブドインスタンスでは、1 年契約または 3 年契約で DB インスタンスを予約でき、DB インスタンスのオンデマンドインスタンス料金に比べて、大幅な割引を受けられます。
Amazon RDS では、データベースインスタンスを 1 回に最大 7 日間停止し、起動することができます。これにより、常にデータベースを実行する必要がなくなり、開発/テスト用途でのデータベースの使用がより簡単に、かつ経済的に行えるようになります。
デベロッパーの生産性
Trusted Language Extensions (TLE) for PostgreSQL は、AWS によるコード認証を必要とせず、高性能な拡張機能を迅速に構築し、Amazon Aurora および Amazon RDS 上で安全に実行できる開発キットおよびオープンソース・プロジェクトです。開発者は、JavaScript、PL/pgSQL、Perl、SQL のような一般的な信頼できる言語を使って、安全に拡張機能を記述することができます。TLE は、安全でないリソースへのアクセスを防止し、拡張機能の不具合を単一のデータベース接続に制限するように設計されています。DBA は、拡張機能をインストールできるユーザーをオンラインできめ細かく制御し、拡張機能を実行するための権限モデルを作成することができます。TLE は、Aurora および Amazon RDS をご利用のお客様には、追加費用なしで利用できます。