この記事ではAmazon Auroraについての特徴を独自の視点でまとめています。

 

Amazon_Auroraとは?

  • クラウド用に構築された MySQL および PostgreSQL 互換のリレーショナルデータベース

 

Auroraの特徴

  • Auroraはマルチマスター機能によって別AZにWriterのマスターをマルチ構成で生成できる
  • DBインスタンスでは常に自動バックアップが有効になっている
  • 自動バックアップを無効にすることができない
  • バックアップの保持期間は DB クラスターによって管理される
  • 標準の MySQL の最大の5倍のスループットを実現する
  • postgresql の最大3倍のスループットを実現する

 

 

 

 

このシナリオでは、EC2インスタンスのWEBサーバーとOLTP処理を行うデータベースの両方をスケーラブルな構成によって可用性を高める必要があります。

したがって、複数のアベイラビリティーゾーンにまたがるEC2インスタンスにAuto ScalingグループとELBを設定することが基本対応となります。

これに加えて、データベースは、不規則なピーク処理が発生することからAuroraサーバレスを利用します。

 

Aurora Serverless では、DB インスタンスクラスのサイズを指定せずにデータベースエンドポイントを作成できます。最小と最大のキャパシティーを設定します。

Aurora Serverless では、データベースエンドポイントがプロキシフリートに接続されます。このプロキシフリートでは、ワークロードをルーティングする先のリソースのフリートがオートスケーリングされます。

プロキシフリートを使用すると、最小と最大のキャパシティー仕様に基づいて Aurora Serverless がリソースを自動的にスケールするため、接続が途切れることはありません。

Auroraはクラウド向けに構築され、MySQL や PostgreSQL と互換性のあるリレーショナルデータベースです。

通常のRDSよりも高速なパフォーマンスが実現できますが、ユーザー行動データの高速処理はElastiCacheの方が向いています。

 

Amazon Aurora (Aurora) は完全マネージド型のリレーショナルデータベースエンジンで、MySQL および PostgreSQL と互換性があります。

MySQL と PostgreSQL が、ハイエンドの商用データベースのスピードおよび信頼性と、オープンソースデータベースのシンプルさとコスト効率を併せ持っています。

既存の MySQL および PostgreSQL データベースで現在使用しているコード、ツール、アプリケーションを Aurora でも使用できます。Aurora では、既存のアプリケーションのほとんどを変更することなく、ほんの少しのワークロードで MySQL のスループットの 5 倍、PostgreSQL のスループットの 3 倍を実現します。

Amazon Aurora は 3 つのアベイラビリティーゾーンにわたってユーザーのデータを 6 個レプリケーションし、継続的に Amazon S3 にバックアップすることで、可用性が 99.99% を超えるように設計されています。物理ストレージの障害は透過的に復旧され、インスタンスのフェイルオーバーは通常 30 秒未満で完了します。また、数秒で過去のある時点にバックトラックして、ユーザーエラーから復旧することもできます。Global Database を使用すれば、単一の Aurora データベースを複数の AWS リージョンで利用できるため、ローカルで高速な読み取りと迅速な災害復旧が可能になります。

参考サイト

 

Auroraの可用性について

月間稼働率が99%以上で使用できるようにするSLAが設けられいる対策

AuroraはソースDBクラスターとは異なるリージョンにリードレプリカを作成することができます。 この方法を採用すると、障害回復機能を向上させ、読み取り操作をユーザーに近いリージョンに拡張しつつ、あるリージョンから別のリージョンへの移行を容易にすることができます。Amazon Aurora MySQL DB クラスターを、ソース DB クラスターとは異なる AWS リージョンにリードレプリカとして作成できます。このアプローチを使用すると、災害対策機能が向上し、ユーザーに近い AWS リージョンへの読み取りオペレーションをスケールして、AWS リージョン間の移行を容易にすることができます

 

Auroraサーバレスについて

ユースケース

システムはコールセンターのピーク時には非常に負荷が高まりますが、その負荷発生の周期が一定ではありません。データベースはオンライントランザクション処理(OLTP)が実施されており、この処理も同様にスケーラブルにする必要があります。 

これらの要件を満たすためのAWSデータベース構成

 

複数のアベイラビリティーゾーンにまたがるEC2インスタンスにAuto ScalingグループとELBを設定することが基本対応となります。これに加えて、データベースは、不規則なピーク処理が発生することからAuroraサーバレスを利用します。

Aurora Serverless では、DB インスタンスクラスのサイズを指定せずにデータベースエンドポイントを作成できます。最小と最大のキャパシティーを設定します。 Aurora Serverless では、データベースエンドポイントがプロキシフリートに接続されます。このプロキシフリートでは、ワークロードをルーティングする先のリソースのフリートがオートスケーリングされます。プロキシフリートを使用すると、最小と最大のキャパシティー仕様に基づいて Aurora Serverless がリソースを自動的にスケールするため、接続が途切れることはありません。

 

オートスケールについて

AuroraやRDSはオートスケールによって自動で性能を拡張することができません。

 

オーロラ以外の AWS が提供しているデータベース

dynamo DB

 

記事タイトル検索