#前提
AWSについて学んだことを殴り書きしていきます。
#本題
RDS(Amazon Relational Database Service)について記述していきます。
##RDSとは
マネージドサービスとして提供されるリレーショナルデータベースサービスの総称。
マネージドサービスなので、運用管理はAWS。
自分でセットアップせずに、出来合のデータベースサーバーが起動し、すぐに利用できるようになる。
このようにして作成したデータベースサーバーのことをDBインスタンスと言う。
※マネジメントコンソールで操作するだけでデータベースサーバーが作れる。
##メリット
アンマネージドサービスとマネージドサービスの違い。
アンマネージドサービスであるEC2インスタンスを使ってデータベースを構成する場合、データベースソフトウェアのアップデートなどの保守管理、データのバックアップや冗長化などは、全て自分で面倒を見なければならない。
それに対して、マネージドサービスであるRDSを利用すれば、そうした面倒は全てAWSに任せることができる。
一般には、AWSが安定した運用をしてくれるRDSの方が信頼できる。
実際に、RDSは設定次第で容易に冗長化構成にでき、デフォルトでは5分間隔で自動的にバックアップが作られており、万一、故障した時には、その時点まで戻すことができる。
##デメリット
主に2点あります。
1、コスト面のデメリット
2、構成の自由度がない
###1、コスト面のデメリット
EC2で運用するのに比べて、少しコストがかかると言う点。
###2、構成の自由度がない
EC2にデータベースを構成する場合、データベースサーバーのオプション変更でパフォーマンスチューニングを実施できる。
RDSではカスタム設定で動かすことはできない。
RDSでも、いくつかのオプションは変更できるものの、基本的には、AWSによって構成されている標準的な構成のデータベースを利用することになり、高度なカスタムチューニングは困難。
...以上のデメリットがあるとはいえ、安定運用のメリットの方が重要視される。
そのためAWSでデータベースを利用するときは、RDSを利用するのが一般的。