【あまぞんおーろら】

Amazon Aurora とは?

最終更新:
💡 計算と保存を分けて運用する、AWSのデータベース

Amazon RDSの一部として提供される、MySQL互換・PostgreSQL互換のマネージドなリレーショナルデータベース。計算部分と分散ストレージを分離し、クラスターとして運用する。

📌 このページのポイント
Aurora:計算と保存を分けるAmazon RDSの一部Writer読み書き:1つReader読み取り:任意同じクラスターのストレージAZ Aデータを保存AZ Bデータを保存AZ Cデータを保存複数AZへ分散して保存
通常のAurora DBクラスターの模式図。線はストレージを共有する関係です。別製品のAurora DSQLの構成を表す図ではありません。
ひよこ ひよこ
RDSとは別のサービスなの?
ペンギン先生 ペンギン先生
AuroraはAmazon RDSの一部として提供されるデータベースエンジンだよ。RDSでは通常のMySQLやPostgreSQLなども選べる。Auroraは、それらとの互換性を持つエンジンと分散ストレージを組み合わせ、計算部分と保存部分を分けているんだ。
ひよこ ひよこ
複数のサーバーが全部書き込むの?
ペンギン先生 ペンギン先生
通常のAurora DBクラスターでは、読み書きするwriterは1つ。必要に応じて、読み取り用のreaderを追加する。readerはwriterと同じクラスターのストレージを使うよ。データの保存先が複数あることと、全部のDBインスタンスが書き込めることは別なんだ。
ひよこ ひよこ
障害が起きたらどうなるの?
ペンギン先生 ペンギン先生
ストレージは複数のアベイラビリティゾーンに分散して保存されるよ。readerを別のゾーンに置くと、writerの障害時に昇格する構成を取れる。ただし接続の再試行や切り替え中の影響も考える必要がある。データを複製しているだけで、停止やデータの誤削除などをすべて防げるわけではないんだ。
ひよこ ひよこ
Serverlessなら、何も使わない日は無料?
ペンギン先生 ペンギン先生
Serverlessは需要に合わせて計算容量を調整する構成だよ。対応するエンジンと設定で自動停止を使えば、停止中のDBインスタンス料金はゼロになる。ただしストレージなどの料金は残る。接続が開いている場合や対応しない機能の組み合わせでは停止せず、再開にも時間がかかるんだ。
ひよこ ひよこ
普通のMySQLより、必ず速くて安い?
ペンギン先生 ペンギン先生
性能や費用は、問い合わせ、データ、容量、構成などによるよ。倍率の宣伝値をすべての処理の保証にしないようにしよう。マネージドでも、SQLや設計の調整は利用者が行う。互換エンジンのバージョンや対応機能を確認し、アプリの動作と負荷、費用を確かめることが大切なんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Amazon Aurora」って出てきたら「AWSで管理して使う、MySQL・PostgreSQL互換のデータベース」と思えばだいたいOK!
📖 おまけ:英語の意味
「Amazon Aurora」 = AWSのデータベースエンジンの名称
💬 Aurora MySQL互換とAurora PostgreSQL互換があるよ。別製品のAurora DSQLと、構成や仕様を混同しないようにしよう。

参考資料

← 用語集にもどる