Amazon RDSとは
Amazon Relational Database Service(Amazon RDS)は、リレーショナルデータベースの6種類の製品をクラウド上で静的な動作条件で利用できるサービス。
Amazon Auroraに加えて、PostgreSQL、MySQL、MariaDB、Oracle Database、SQL Serverに対応し、メモリ、パフォーマンス、I/Dなどが最適化されたデーターベースインスタンスとして提供されている。
RDSはマネージドサービスで、アップデートなどが自動で行える。そのため、バックアップなどの面倒なタスクも自動化されていて、管理者が行う必要がない。
AWS Database Migration Service(DMS)を使用すれば、既存のデータベースからの移行や複製ができる。
インスタンスクラス
RDSはEC2と同様にインスタンス形式で使用する。
インスタンスクラスは、スタンダード・メモリ最適化・バースト可能の3種類があり、クラスによってサイズが用意されている。
※インスタンスクラスによっては、サポートしていないDBMSがある。
データベースインスタンスはVPC上に置く必要がある。
主なインスタンスクラス
用途 | インスタンスクラス | 内容 |
---|---|---|
スタンダード | db.m5など | 汎用的なインスタンスクラス |
メモリ最適化 | db.x1e | メモリ消費の高いアプリケーション用に最適化されたインスタンスクラス。一部リージョンでのみ使用可能。 |
メモリ最適化 | db.x1 | メモリ消費に高いアプリケーション用に最適化されたインスタンスクラス。最大値がdb.x1eの半分。 |
メモリ最適化 | db.r5など | ネットワークとEBSのパフォーマンスを強化。AWS nitro System。 |
バースト可能 | db.t3など | CPUの最大使用量までのバースト可能 |
RDSの料金
RDSの料金は、基本的にEC2と似ているが、RDSの特徴としてDBMSによってインスタンスの料金の違いがある。
RDSの料金 = ストレージの料金 + データベースインスタンスの料金 + バックアップストレージの料金 + 通信量
- ストレージ料金
確保しているストレージに対する料金。使用している寮でなく確保している量 - データベースインスタンスの料金(DBMSライセンス料を含む)
EC2インスタンスと同様に、時間当たりの稼働料金。手軽なものから高性能なものまであり、高性能であれば料金が高くなる。また、冗長性や利用するデータベースエンジン(DBMS)によって料金が異なる。 - バックアップストレージの料金
データベースインスタンスではバックアップをとることができる。このバックアップのことをスナップショットという。スナップショットはバックアップストレージに作成され、その容量に応じて料金がかかる。 - 通信料
データベースインスタンスがインターネットと通信する場合は、その転送量に応じて料金がかかる。同じVPC内のEC2など、同一のAZ内でしか通信しない場合は、料金は発生しない。
マルチAZ構成
シングルAZ構成では、1つのAZに配置するのに対してマルチAZ構成では、複数のAZに配置して冗長性をとる。
RDSのメリットとデメリット
RDSのメリットはマネージドサービスであること。アップデートが自動的に行われるので頻繁にメンテナンスする必要がない。手軽にデータベースを作成でき、オンプレミスからの移行もでき、特別なソフトウェアの調整をすることなく移行できる。
デメリットは、利用者側の自由にできないこと。提供されているDBMSには限りがあり、自動アップデートがデメリットに働くことがある。
RDSの自動アップデート
RDSの自動アップデート(停止を伴うメンテナンス)は、いきなり行われると不便なので、利用者は以下の3つの選択肢がある。
- そのまま自動アップデートをさせる方法。
- マネジメントコンソールにログインして手動でアップデートしたり、更新時間を指定する方法。
- 更新を無視する方法(先送りにする)