今回は、AWSのサービスから「データベース編」として3つのサービスを紹介します。
AWS上で、MySQLやOracle、memcachedやRedisなどを利用する際に活用できます。
いずれも構成を柔軟に変えられるというメリットがあります。
Amazon RDS
クラウド上で簡単にデータベースサーバー(RDBMS)を構築できるサービスです。
必要なスペックを選択するだけで、すぐに利用可能となります。
構築や運用の手間が少ない点がメリットです。
サーバーの管理や、データベースのインストール・初期設定もAmazon側が対応してくれます。
後からサーバーの追加や増強を行なうことも可能で、複数のデータセンターにレプリケーションするなどの冗長構成も簡単に構築できます。
複数のデータベースエンジンに対応しており、以下から選択して利用できます。
- Aurora ※後述
- PostgreSQL
- MySQL
- MariaDB
- Oracle
- SQL Server
利用時間で課金されますが、OracleやSQL Serverのライセンス料金も含まれている点が特徴です。
Amazon Aurora
Aurora(オーロラ)と読みます。Amazon RDSで利用できるデータベースエンジンの一つです。
Amazonが開発したMySQL互換のデータベースで、高いパフォーマンスが特徴です。
MySQLをベースに、クラウド時代に適した構成として再設計されたと言われています。
以下の特徴からも分かる通り、柔軟な構成と性能面でメリットがあります。
- MySQLクライアントから通常通り利用可能
- データは複数のデータセンターに分散保存
- 64TBまで自動で容量が拡大
- レプリケーションのラグは10ミリ秒程度
- 数クリックで簡単にサーバー追加
- 障害を自動検知してフェールオーバー
- バックアップからの復元位置を秒単位で指定可能
現在はPostgreSQL互換バージョンのAuroraも発表されています。
Amazon ElastiCache
AWS上でキャッシュサーバーを簡単に利用できるサービスです。
memcachedもしくはRedisが選択でき、任意のスペックで起動可能です。
RDSと同様にサーバーの構築や管理、ミドルウェアの設定などは必要ありません。
後からスペックの変更やサーバー台数の増減も簡単に実行できるほか、バージョンアップやバックアップも数クリックで実施可能です。
memcachedクライアントやRedisクライアントから通常通り接続できるため、Webサービスのセッション管理やキャッシュ先としてよく利用されます。
VPCやセキュリティグループでのアクセス制限も可能なため、運用負荷を下げつつもセキュアな環境でキャッシュサーバーを活用できます。
まとめ
いわゆる「マネージドサービス」のRDSとElastiCacheを紹介しました。
基本的には便利に使えるサービスなのですが、利用できるマイナーバージョンが限られていたり、定期的にバージョンアップが入るといった点には注意が必要です。
自前でEC2インスタンスを立てて管理する必要がないため、可能であればこれらのサービスを利用することで運用負荷の軽減に繋がります。
【関連記事】