データベースを使うには、サーバーにデータベースをインストールすればよいのです。と、言うのは簡単ですが、実際は環境によって微妙に手順が変わるし、場合によってはググっても分からないエラーが出ることもあります。
構築できても、そのあとが大変です。パッチ適用やスケールアップもノウハウが必要です。そもそも、データベース専用サーバーを用意するのはコストがかかる・・・データベースを使うのも楽ではありませんよね。
そんな悩みを解決してくれるのが、今回ご紹介する「Amazon Relational Database Service (Amazon RDS)」なのです!データベースについてお困りの方、ぜひご一読ください。
Amazon RDSとは
Amazon RDS(以下RDS)は、超簡単にいえば「サーバーを立てなくても使えるデータベース」です。AWSマネジメントコンソールで数クリックするだけで、データベースができてしまいます。
サーバーも不要、インストール作業も不要です。サーバーにインストールしたものを使うことに慣れている人には、「むき出しのデータベース」といえばイメージが湧くでしょうか。
サポートされているデータベースは、以下の通りです。
- Oracle
- SQL Server
- MySQL
- PostgreSQL
他にもありますが、これだけでメジャーなデータベースはほぼ網羅できていますよね。
Amazon RDSのメリット
従来のデータベースと比較したときのメリットを解説します。
導入が簡単
後ほど解説する方法で、ほんの数分でデータベースを立ち上げることが可能です。インストールは一切不要でデータベースを入手できます。もう、インストール中のよくわからないエラーメッセージに振り回されることもないのです。
管理や開発するクライアント側のツールも、特別なものは必要なく、従来のものを継続して使えます。例えば、OracleでいうとSQL Developerはもちろん、フリーのOsqlEditも使えます。SQLServerはManagement Studioが使えるし、MySQLではSQL Workbenchが使えます。
要は、データベースインスタンスへ接続するためのエンドポイント(簡単にいえばアドレス)が振られるので、従来の接続先(データベースサーバーへのIPアドレスやサーバー名)をAWS上のRDSのエンドポイントに切り替えるだけ、といえばお分かりでしょうか。
管理しやすい
特別なアプリを使わなくても、AWSマネジメントコンソールやCLIで操作可能です。CPU、メモリ、ファイルシステム、ディスク I/O といった、50種を超える各種パフォーマンスをブラウザやCLIで確認できるのはとても便利ですよね。
さらに、AWS CloudWatchに追加料金なしで各種パフォーマンスの監視をさせることも可能です。
拡張性が高い
ディスクなどのリソースの追加が、停止することなく数分程度で完了します!通常のデータベースなら、一度サービスを落として表領域を追加して・・・といった大変な手順を踏みますが、それらが一切不要です。
安全性が高い
AWS Key Management Service (KMS)を使って、データベース全体を暗号化できるので、不正アクセスへの対応も万全です。アクセス権限もAWS Identity and Access Management (IAM)を使えるので、他のAWSのサービスと合わせて権限管理できます。
OracleやSQL Serverのみになりますが、Transparent Data Encryption の対応も可能です。
Amazon RDSの使い方
では、データベースを立ち上げてみましょう。AWSのマネジメントコンソールから、サービス→データベース→Relational Database Serviceを選んでください。
出てきた画面の左側、「インスタンス」を選んでください。
次にデータベースの選択です。ここではSQLServerを選びます。
このあたり、基本的に何も変更する必要はありません。
次にdbインスタンス識別名やマスターユーザー名、パスワードを入力します。
次に、ここだけ注意してください。「パブリックアクセシビリティ」を「はい」にしないと、外部からアクセス出来ません。
すべて入力が終わると、データベースインスタンスの作成が始まります。完了するまで数分かかります。
完了したら、再度インスタンスの詳細をみてください。以下のように、エンドポイントのアドレスが振られているのがわかります。
(DBインスタンス識別子).(ランダムな英数).us-west-2.rds.amazonaws.com
あとはSQLServer ManagementStudioから接続するだけです。サーバー名に先ほどのエンドポイントのアドレス、ログインとパスワードは先ほど入力したマスター名とユーザー名です。
これで完了です!あとは新規にデータベースを作って、テーブルを作って、と通常の環境づくりと変わりません。
簡単でしたね!
料金
それでは気になるお値段です!
SQLServerで計算します。データベースを構築するリージョンによって値段が変わります。ここでは、東京リージョンで計算してみましょう。
- db.t2.microインスタンス 0.031USD/時間
- db.t2.smallインスタンス 0.062USD
- db.t2.mediumインスタンス 0.124USD
一番大きいmediumインスタンスで計算しましょう。0.124×24時間×30日(1ヶ月)=約90ドルとなり、1ドル110円として9900円です。これに別途消費税が加算されます。
月額10000円に満たない金額で、メーカー製のデータベースが手軽に使えるなら、検討する価値は十分ありますね!ちなみに、どこにデータを置いても問題ないという方は、アメリカを選択してください。上記よりも安くなります。
まとめ
本記事では、Amazon RDSを解説しました。
SQLServerを使いましたが、他のデータベースでも同じです。Oracleでも、同じようにデータベースを作って、SQLDeveloperやサードパーティー製ツールなどを使ってアクセスして・・・となります。
データベースを導入する際は、ぜひ選択肢に入れてくださいね!