【AWS】Amazon Aurora
Amazon Aurora(Aurora)とは、Amazon Relational Database Service(Amazon RDS)[1]の一部で、MySQLとPostgreSQLに完全な互換性があるフルマネージド型[2]のリレーショナルデータベースエンジン[3]です。
標準MySQLと標準PostgreSQLの機能性や性能を十分なものにすべく開発されたAuroraは、現在ECサイトAmazonやNetflixなどに利用されています[4]。
今回は、そんなAuroraについて説明します。
特徴
高性能
標準MySQL、標準PostgreSQLより高速
Auroraは、標準MySQLの最大5倍、標準PostgreSQLの最大3倍スループットが向上しています[5]。これは、Auroraが利用可能なコンピューティング、メモリ、ネットワークをデータベースエンジンが最大限に活用できるよう、さまざまなソフトウェアおよびハードウェアの技術が使用されているためです。
使用できるバージョンが限られているため注意が必要ですが、AWSでMySQLおよびPostgreSQLを使用したい場合は、基本的にAuroraを使うのが良いでしょう。
優れたスケーラビリティ
Amazon RDS APIまたはAWS Management Consoleを使用して、プロビジョニングされたインスタンスをスケールアップまたはスケールダウンできます。このスケーリングは数分で完了します。
また、Auroraはストレージもニーズに合わせて自動的にスケーリングします。
また、ストレージのニーズも大きくなると、データベースのボリュームも大きくなります。ボリュームは10GBごとに最大128TiBまで拡張されます。そのため、ユーザー側でデータベースに余分なストレージをプロビジョニングする必要はありません。
簡単な操作
Amazon RDS Management Consoleから簡単な操作でデータベースのセットアップ、運用、スケーリング、およびアプリケーションとの接続が可能です。
高可用性と耐久性
マルチAZ配置
Auroraは、1つのAWSリージョンの中に3つのアベイラビリティゾーンがあります。
引用:リージョンとアベイラビリティゾーン - Amazon Aurora
DBクラスターのデータは、この3つアベイラビリティゾーンにまたがるかたちで存在するデータベースボリュームにコピーされます。
データベースボリュームは自動的に10GBのセグメントに分割され、多数のディスクに分散しています。10GBのデータベースボリュームが3つのアベイラビリティゾーンにわたって6つのストレージノードに分散されています。
引用:Amazon Aurora DB クラスター - Amazon Aurora
優れたコスト効率
Auroraは事前の契約が不要です。起動するインスタンスごとに時間単位の料金が発生します。DBインスタンスの使用が完了したら、そのインスタンスを削除できます。予備としてストレージを多めにプロビジョニングする必要はなく、実際に消費したストレージに対してのみ料金が発生します。
移行サポート
MySQL、PostgreSQLデータベースの移行
標準MySQLおよび標準PostgreSQLのインポートおよびエクスポートツールは、Auroraと連動しています。
また、Amazon RDS for MySQLおよびAmazon RDS for PostgreSQLのDBスナップショットから新しいAuroraデータベースを作成することも簡単にできます。
DBスナップショットを利用した移行操作は通常一時間以内に完了しますが、移行するデータ量および形式によって異なります。
Discussion