MySQLやPostgreSQLはOSSなので無償で使えます。また開発言語との相性もいいのでとても広く使われています。この記事を読んでいる方の中でも、すでにお使いの方は多いことでしょう。そんな方々へ質問です。以下のようなことでお悩みではありませんか?
・ レスポンスが悪い!
・ クラウド上に環境をセットアップするのが面倒
・ パッチ適用などの運用作業がイヤだ
・ 現在使っているクライアント側ツールはそのまま使いたい
お悩みの方だけでなく、既存のシステムをクラウド、とりわけAWSに移行する計画がある方々、ぜひAmazon Auroraを選択肢に入れてください!
本記事では、Amazon Auroraを解説します。
Amazon Auroraとは
Amazon Auroraとは、要はリレーショナルデータベースの1つです・・・といってしまうとそれまでですが、特徴は決してそれだけではありません。AWSにはAuroraの他にRDSというサービスがありますが、それとは違います。
Auroraにしかない特徴、これから順次解説していきます。
Amazon Auroraのメリット
普通にサーバーインスタンスにMySQLやPostgreSQLをインストールしたり、RDSでデータベースインスタンスを立ち上げるのと何が違うのでしょうか?順番に見ていきましょう。
MySQLやPostgreSQL互換
Aurora自体はデータベースでありながら、従来のデータベースとは大きく異なります。しかしMySQLとPostgreSQLとの互換性があります。つまりクライアントツールやシステムからアクセスする仕組みは変えずに済むのです!これは導入の敷居がかなり低くなりますね。
パフォーマンスが高い
Auroraは、標準的なMySQLデータベースと比べて最大で5倍、標準的なPostgreSQLデータベースと比べて最大で3倍高速です。つまり、特別なチューニングをせずに高速化できるということです。
拡張性が高い
Auroraは他のAWSサービスとの連携が容易です。S3への自動バックアップをはじめ、CloudWatchを使ったパフォーマンス監視や、その他AWSの専用GUIツールPerformance Insightを使うこともできます。
互換性が高い
前述の繰り返しになりますが、MySQLやPostgreSQLとの互換性が高く、クライアントツールやシステム側からアクセスする仕組みに手を加える必要はありません。またAurora以外のデータベースから移行するには、移行専用ツールAWS Database Migration Serviceを使って簡単にできてしまいます。
安全性が高い
Auroraはセキュリティも堅牢です。例えばAmazon VPCによるネットワークの分離や、AWS Key Management Service (KMS)を使ったアクセス制限、そしてバックアップ、スナップショット、レプリカもすべて暗号化されています。
どんな企業・シーンでAmazon Auroraは活躍するか
具体的にどんな企業やシーンで活躍するか、それはやはり既存システムの運用コストにお悩みの企業でしょう。
自社サーバーを構築して、そこにデータベースエンジンやWebシステムを設置している企業は多いでしょう。この方式だと、自分たちの責任かでなんでもできるというメリットがあります。しかし言い換えれば、なんでも自分たちで行う必要があります。バックアップやパフォーマンス監視、データベースのパッチ適用などなど・・・
データベース監視要員をアサインさせるほどの、人員に余裕のある企業も少ないはずです。となると誰かに兼任で任せざるをえません。工数的なコストも無視できないし、兼任で指名された人もデータベースが好きでない人ならどうしても後ろ向きの仕事に・・・なりますよね。
いっそ、システムまるごとAWSへ移行してはどうでしょうか?
単に移行するだけでなく、データベースのあり方も見直しましょう。どうせなら監視や運用といった、システムの本来の目的以外のことは丸ごとAWSへ任せませんか?そんなときに有力な選択肢に入るが、Amazon Auroraです!
データベース運用にお悩みの企業や担当の方、先ほど述べてきたAuroraのメリットを考慮して、ぜひ検討してみてください!
料金
概算費用は以下の通りです。
リージョンによって料金は異なります。またバックアップはS3に保存されるのでその費用、データ転送容量によっても費用が発生します。
始め方
いかに簡単に立ち上げられるのかをご覧いただきます。
AWSマネジネントコンソールより、データベース→Database Relational Serviceを選んでください。これはAWSのRDSのトップ画面です。どのデータベースを立ち上げるのかを選択します。
ここではもちろん、Auroraを選んでください。
Auroraの互換性を選択します。要はどのDBとの互換性をもつデータベースを立ち上げますか?ということです。MySQLの5.6または5.7、PostgreSQLのいずれかを選択します。
あとは画面の指示通りに諸条件を入力していくのですが、注意が1点!パブリックアクセシビリティという選択があります。ここを「はい」にしないと外部から一切接続できません。
さらに詳細が続きます。インスタンスの大きさを聞いてきたので、実験用ということで一番小さなものを選択します。
そして最後、「DBインスタンスを作成」ボタンをクリックします。
DBインスタンスの作成が開始します。
作成が完了したら、もう一度AWSマネジメントコソールのRelationalDatabaseServiceへもどり、出来上がったDBインスタンスを探してください。以下の形式でエンドポイントが割り当てられているのが分かります。
(インスタンス名)-(リージョン名やランダムな英数字).rds.amazonaws.com
このエンドポイントをコピーしておいてください。
次に、今回はMySQLの互換であるAuroraを選択したので、クライアントツールはMySQL Workbenchを使いましょう。エンドポイントやユーザー名などを入力してください。
テスト接続のボタンをクリックしてください。どうでしょうか?
できました!所要時間は10分足らずでした。
まとめ
本記事では、Amazon Auroraを解説しました。
MySQLやPostgreSQLをお使いでAWSヘの移行予定がある方、ぜひ導入を検討してみてください!