リレーショナルデータベースエンジン・Amazon Aurora

今回はそんなAmazon Auroraの魅力を余すことなくご紹介致します。

  • Amazon Auroraとは何か
  • Amazon Auroraがどんな特徴を持っているか知りたい
  • Amazon Auroraと他RDBMSとの違いが知りたい
  • Amazon Auroraを導入するメリット・デメリットは?
  • Amazon Auroraはどう使うのか

このような疑問を抱えている人向けの記事となっています。

Amazon Auroraについて理解を深めたい人は、これを良いチャンスと思ってぜひご一読ください。


Amazon Auroraとは

この項目では、Amazon Auroraの概要について詳しく説明していきます。

Amazon Auroraはクラウド向けに開発された高性能マネージドリレーショナルデータベースエンジンのことです。

商用DB(商用データベース)の高性能な部分信頼性、そしてスピード感

オープンソースDB(オープンソースデータベース)のリーズナブルなところシンプルさ

2つの良い部分を重ね合わせたのがAmazon Auroraです。


名称

アマゾンオーロラ」と読みます。

「Aurora」と呼ばれる機会が多いです。


プラットフォーム

Amazon web Services(AWS)

AWSの「Amazon RDS(リレーショナルデータベースサービス)」の中の1つです。


MySQLとの互換性

Amazon AuroraはMySQLに対して優れた互換性を持っています。

MySQLで使っているコードやアプリケーション、ツールなどのほとんどをそのままAmazon Auroraで使うことが可能です。


PostgreSQLとの互換性

Amazon AuroraはPostgreSQLと高い互換性を誇ります。

PostgreSQLに使われているコードやアプリケーション、ツールなどを変更することなくAmazon Auroraで使うことができます。


Amazon Auroraの特徴

Amazonが提供するAmazon Auroraには、どんな特徴があるのか順に見ていきましょう。


高いスペック

商用データベースと同じ機能を10分の1程度のコストで動かすことができます。

処理能力はMySQLの5倍、PostgreSQLの3倍です。

Amazonレプリカを作れば読み込みスピードがアップします。


高い信頼性

データベースを保護するため、複数段階のセキュリティが設けられています。

KMS(AWS Key Management Service)を経由して作成・コントロールされているキーによって保管する時にデータを暗号化します。

移動中のデータもSSLで暗号化されます。

また、Amazon VPCによってネットワーク分離も。

レプリカやスナップショットの暗号化、自動化のバックアップもおこなうことが可能です。


他リレーショナルデータベースとの互換性

「Amazon Auroraとは」でも紹介しましたが、Amazon Auroraは「MySQL」と「PostgreSQL」との完全互換性があります。

新しいリリースに対しても定期的に互換性を追加しているので、両者のデータベースを簡単に移行することが可能です。


高い可用性

バックアップを継続してAmazon Sにし、可用性99.9%以上になるよう作られています。


クロスリージョンレプリカ

「東京リージョン」「米国東部リージョン」を越えてレプリカを作成することができます。


フルマネージド型サービス


Amazon AuroraはRDS(Amazon Relational Database Service )を使用したマネージド(完全運用保守管理代行)型サービスとなっています。

ソフトウェアにパッチを適用したり、ハードウェアのプロビジョニング、そしてセットアップやバックアップなどデータベース管理をAmazonがおこなってくれます


Amazon Auroraの活用事例

Amazon Auroraはどんなことに活用されているのか、見てみましょう。


SaaSアプリケーション

SaaS(Software as a Service)アプリケーションは複数の企業がデータベースを共有する構造となっています(マルチテナント)。

この構造はパフォーマンスと信頼性の高さ、ストレージの拡大・縮小の柔軟性が必要となります。

Amazon Auroraは全ての条件をクリアしており、SaaSアプリケーションに活用することが可能です。


ゲームアプリ

webゲームやスマートフォンゲームアプリなど、高い可用性や大規模ストレージに耐えうる性能・スループットの高さ。

それらを持つAmazon Auroraはゲームアプリに活用することが可能です。

ライセンスによる縛りもないため、色んなパターンに対応できます。


システム運用コストを抑えたい企業のシステム

データベースの監視やバックアップ、パッチを適用する作業などのシステム運用コストを抑えたい企業

そんな企業にAmazon Auroraは活用されています。


Amazon Auroraを利用している企業

  • ドワンゴ
  • レコチョク
  • 東急電鉄
  • at home
  • 損保保険ジャパン など


Amazon AuroraとMySQLとPostgreSQL

Amazon Auroraは「MySQL」と「PostgreSQL」との互換性があるリレーショナルデータベースエンジンというのは、先に話したとおりです。

ただし、注意したいことがあります。

それぞれAmazon Auroraと互換性があるのは「バージョンが決まっている」のです。

現在は最新バージョンに対応していますが、将来も最新バージョンを実装するかはわかりません。

その点をよく理解しておきましょう。


Amazon AuroraとRDSの比較

Amazon AuroraはRDSの一部です。

そもそも、Amazon AuroraとRDSは何が違うのか……。

2つのサービスを比較してみましょう。


RDS(Amazon Relational Database Service)について

RDS(Amazon Relational Database Service)とは、マネージド型リレーショナルデータベースサービスです。

データベースを運用する際の様々な悩みをサポートしてくれます。


トラブルに対する耐久性の違い

RDSの場合、トラブルが起こってディスクが2本故障した時にはストップします。

対するAmazon Auroraの場合は、ディスクが3本故障したとしても読み込むことができます。


互換性があるデータベースの違い

Amazon Auroraと互換性があるのは「MySQL」と「PostgreSQL」の2つです。

RDSと互換性があるのは上記2つに加え「Oracle」「MariaDB」「SQLServer」

他データベースとの互換性についてはRDSが優れています。


Amazon Auroraのコスト

Amazon Auroraの料金設定についてご説明します。


初期費用

Amazon Auroraには初期費用は一切かかりません。


使用した分だけの請求

Amazon Auroraを使用した分だけ料金が発生します。

最低料金設定などもありませんので、純粋に自分が使った分のみコストがかかると思っておいて良いでしょう。

料金の詳細は公式サイトで確認しましょう

Amazon Aurora公式サイト上の「料金ページ」で、細かい料金設定をチェックすることができます。

公式サイトURL:https://aws.amazon.com/jp/rds/aurora/pricing/


Amazon Auroraの試用

Amazon Auroraを試しに使ってみたい時の方法についてご紹介しましょう。


1.AWSコンソール(https://console.aws.amazon.com/console/home)にサインインします

アカウントを持っていない人は新しいAWSアカウントの作成から始めましょう。


2.「Database」の中にある「RDS」を選択します。

データベースエンジンの種類の中から「Amazon Aurora」を選びましょう。

このような手順でAmazon Auroraの使用が可能です。


Amazon Auroraのメリット

「Amazon Auroraの特徴」の項目とも重複するところもありますが、Amazon Auroraのメリットについて詳しく解説していきます。


高機能

「MySQL」や「PostgreSQL」と比較して数倍の速度を誇ります。


互換性がある

「MySQL」や「PostgreSQL」からの移行が簡単におこなうことができます。

現在「MySQL」や「PostgreSQL」を使用している人にとって、ツールやアクセスの仕組みを変更することなく移行できるのは素晴らしいメリットと言えるでしょう。


セキュリティが強い

Amazon VPCを介したネットワーク分離、KMSを使用したアクセス制限。

レプリカやバックアップなどが全て暗号化されているという安心のセキュリティを敷いています。


AWSサービスとの連携がしやすい

パフォーマンス監視はCloudWatch。自動バックアップはS3。

他にもAWS専用GUIツール(Performance Insight)も使用可能です。


停止することなくパッチ適用ができる

Amazon Auroraはシステムを停止させることなくパッチ適用が可能です。

年中無休でサービスを提供したい人にとってはこの上なく大きなメリットと言えるでしょう。


Amazon Auroraのデメリット

この項目ではAmazon Auroraのデメリットについてお伝えします。


データベースエンジンやバージョンによっては互換性がない

「MySQL」や「PostgreSQL」に対しては互換性がありますが、他データベースエンジンへの互換性はありません。

また、「MySQL」や「PostgreSQL」もバージョンによっては互換性がないものもあります。


オペレーションミスに注意が必要

マネージド型なので、コンソール画面上で、インスタンス作成・起動・削除などの動作を数分で簡単にできます。

ですが、オペミスしてしまうと確認されることなく処理されるので注意したいところ。

インスタンス停止・削除のように重要なオペ処理をする時は気をつけましょう。

コンソール画面はアカウントごとに変わることがないため、「インスタンスを削除する予定のアカウント」を間違えてしまうと悲惨なことになってしまいます。

ブラウザにヘッダーの色を替えるプラグインを導入するなどの工夫を凝らすのがおすすめです。


Amazon Auroraの始め方

Amazon Auroraを使い始めたい場合の手順について、簡単に見ていきましょう。

  1. AWSマネジメントコンソールにアクセスします。
  2. 「データベース」から「Database Relational Service」を選びます。
  3. Amazon Aurora」を選択します。
  4. MySQL」か「PostgreSQL」の互換性、いずれかを選択して次へ進みます。
  5. 画面の指示に沿って入力しましょう。

この順序で進めていけば、Amazon Auroraを開始することが可能です。


Amazon Auroraの使い方

Amazon Auroraの使用が出来る状態まで持って行けたら、次は実際に様々な機能を試してみましょう。

  • Aurora Serverless
  • Aurora Global Database
  • MySQLデータベースの作成
  • PostgreSQLデータベースの作成

その他、Amazon Auroraは色んな機能を使うことができます。

詳細は公式サイトを確認してみましょう。

Amazon AuroraリソースURL:https://aws.amazon.com/jp/rds/aurora/resources/


まとめ

Amazon Auroraについて詳しく解説しましたが、疑問を解決することはできたでしょうか。

Amazon Auroraはフルマネージド型なので、簡単にデータベース管理をすることができます。

「データベースの管理が面倒くさい」「管理に時間を費やしたくない」という人はぜひ取り入れてみることをおすすめします。