本記事の目的

業務でAuroraについて調査したので、そのメモ。


Amazon Aurora 概要

Amazon Aurora(以下、Aurora)はMySQLおよびPosgteSQLと互換性のある、クラウド向けに構築されたRDBです。

商用DBと同等のセキュリティ、可用性、信頼性を10分の1のコストで実現します。


特徴


  • 優れた性能


    • 標準的なMySQLと比べて5倍のスループット

    • 標準的なPosgreSQLと比べて3倍のスループット



  • 拡張性


    • 最大64TBまで自動的にインスタンスをスケール



  • 高可用性


    • 3つのAZに、6個のレプリケーションデータを保持

    • フェイルオーバーは30秒以内で完了



  • 互換性


    • MySQL、PostgreSQLと完全互換性あり

    • スナップショットを取得し、Auroraへマイグレーションすることも可能




Auroraのアーキテクチャ

Aurora は、DBインスタンスと、インスタンスのデータを管理するクラスターボリュームで構成されます。



  • DBインスタンス


    • プライマリDBインスタンス


      • データの読み書きを担当、クラスターボリュームに対する全てのデータ変更を実行する



    • Aurora レプリカ


      • データの読み取りのみを担当

      • 各AZにAuroraレプリカを配置し、高可用性を維持

      • プライマリDBインスタンスが使用できなくなった場合、Auroraレプリカへ自動フェイルオーバー






  • クラスターボリューム


    • 複数のAZにまたがる仮想DBストレージボリューム

    • 各AZにはDBクラスターデータのコピーが保存される



アーキテクチャのイメージを以下に示します。

スクリーンショット 2019-08-13 23.18.14.png

Amazon Aurora DB クラスターより

上記構成から、


  • データを各AZに保存することによる高可用性の確保

  • ストレージとDB管理システムを分離することで高速化

を実現しています。


料金

Auroraの使用料金は、プライマリDBインスタンスとAuroraレプリカを合算したものです。

時間単位で計算されます。

同じインスタンスタイプのRDS for PostgreSQLと比較してみます。

アジアパシフィック(東京)リージョン、オンデマンド、db.t3.mediumの場合:

RDS for PosgreSQL
Aurora

シングルAZ配置
0.112USD
0.125USD

マルチAZ配置
0.224USD
0.125USD

マルチAZでRDSを運用する場合は、Auroraを使用したほうがコストが低くなります。


参考URL

https://dev.classmethod.jp/cloud/aws/awssummit-2016-amazon-aurora-deep-dive/

https://othlotech.hatenablog.com/entry/2018/10/17/180000