はじめに
RDSを初めて使用した際、「データベースを作成」で作成したものは一体何なのかが、よくわかりませんでした。
DBサーバーを作ろうとしたとき、次の2通りの方法があるかと思います。(他にあるのでしょうか…)
- EC2にMySQLなどのDBソフトウェアをインストールする
- RDSを使用する
EC2を使用する方法は、Webサーバーをすでに作ったことがあれば、同様の考え方なので理解しやすいです。
一方でRDSとは何かを調べると、AWSのユーザーガイド1には次のように説明されています。
AWS クラウド でリレーショナルデータベースを簡単にセットアップし、運用し、スケーリングすることのできるウェブサービスです。
その他に目にした解説も同様の内容で、具体的に何が作成されるのかが見えてきませんでした。
EC2との比較をすることが、最初の理解に役立ったので紹介したいと思います。
オンプレミス、EC2、RDSを比較する
- オンプレミスとEC2を比較
- EC2とRDSを比較
の順にみてみると、EC2との対比でRDSを捉えやすくなるかと思います。
オンプレミスとEC2の比較
RDSのユーザーガイド1には次のように、オンプレミスとEC2を比較した図が掲載されています。
オンプレミスではサーバーの全てを管理しなくてはいけない一方、そのうちハードウェア部分の管理をAWSに任せたものがEC2であるとわかります。
EC2とRDSの比較
次の図もRDSのユーザーガイド1のものです。
EC2ではDBサーバーのソフトウェア部分の全てを管理しなくてはいけない一方、RDSではそのほとんどをAWSに任せることができます。
任せるといっても、どのソフトウェアを使い、いつバックアップし、どんなセキュリティを適用するか…といったことは前もってユーザーが決めることができます。それが「データベースを作成」で設定することです。
RDSとは
つまり、DBソフトウェアをインストールしたサーバーを作るだけでなく、その後の運用まで設定に基づいて行ってくれるものがRDSです。
EC2はハードウェアとその管理、
RDSはDBサーバーとその管理、です。
おわりに
具体的に何が作られるのかというのが、
EC2:物理的なサーバー
Webサーバー:EC2+Apache
DBサーバー:EC2+MySQL
のように考えていたので、RDSの説明に管理の部分が大きく取り上げられていたために、具体的に何が作られるのかわからない、となっていました。
しかしそもそもEC2も管理の部分を含んでいました。
考えてみれば他のAWSのサービスも、ただ何か具体的なものが用意されているだけではなく、それを運用することでこういうことができる、その管理はAWSのほうでするよ、というものばかりでした。
そうした管理部分を任せられることこそがAWSを活用するメリットなのだろうと思いました。