見出し画像

RDSとAuroraの違いとは?それぞれの特徴を徹底比較してみた

RDSとAuroraは似ている部分も多く、これまで何度調べてもすぐ忘れていたため、noteにまとめてみました!

本記事では、「コスト、メンテナンス、高可用性、バックアップ、フェイルオーバー、レプリカ、AZ、ストレージサイズ、デプロイオプション」といった観点で徹底比較しています。

【ライターの紹介】
横浜事業部のNATTOUです
主にクラウド環境(AWS)のインフラエンジニアをしております。
最近、在宅ランチのマンネリから抜け出したく、とりあえずなんでものり巻きにして食べることにハマっています。


そもそも「RDS」「Aurora」とは?

「RDS」「Aurora」はどちらも「リレーショナルデータベース」であり、データを表形式で管理するデータベースを表しています。

「Amazon Relational Database Service (Amazon RDS) 」は、AWSが提供するマネージドサービスです。様々なデータベースエンジンに対応しており、Oracle/MySQL/MariaDB/PostgreSQL/SQL Serverなどを選択できます。実はAmazon AuroraもRDSのうちの1つです。

「Amazon Aurora」は、MySQLおよびPostgreSQLと互換性があり、高い耐久性と優れたパフォーマンスを持つ高性能なデータベースです。それぞれのパフォーマンスはMySQLの最大5倍、PostgreSQLの最大3倍高速であるといわれています。
また、Aurora DBクラスターは、1つ以上のDBインスタンスと、データを管理するクラスターボリュームで構成されており、インスタンスとストレージとボリュームが分離している点が特徴的である。

本記事では、それぞれの細かな違いについて次の項目から見ていきます。

①維持にかかる費用

Amazon RDS:
- 時間単価がやや低い。
- 主に「インスタンス」と「ストレージ」の稼働時間による従量課金で料金が設定される。
- マルチAZ展開およびリードレプリカに追加料金が発生する。

Amazon Aurora:
- RDSよりも時間単価がやや高い。
- 「インスタンス」と「ストレージ」の稼働時間による従量課金に加え、I/Oリクエスト数による従量課金も設定される。
- 読み取り負荷が高いワークロードに対してコスト効果が高い。
- リードレプリカをAuto Scalingすることができ、必要な分だけレプリカを建てることで、無駄な課金を抑えることができる。

②メンテナンスコスト

Amazon RDS:
- 自動バックアップ、ソフトウェアパッチ適用、マイナーバージョンアップグレードが提供されている。
- メジャーバージョンアップグレードには一部手動の介入が必要。
Amazon Aurora:
- 完全管理型で、自動バックアップ、パッチ適用、アップグレードが提供されている。
- 管理オーバーヘッドが最小限で、ほとんどの管理タスクを自動で処理可能。
- レプリカをAutoScalingできるので初期見積もりにかける時間が削減可能。
- インスタンスタイプを指定せずに自動的にCPUやメモリをスケーリングするオプション(Aurora Serverless)があり、容量プロビジョニングやスケーリングに関する運用負荷が軽減される。

③高可用性

Amazon RDS:
- マルチAZ展開により高可用性と自動フェイルオーバーが提供されている。
- データについては、別々のAZで動作している。
Amazon Aurora:
- データについては、3つのAZにわたってコピーを最大6個保持することで高可用性を実現している。
- インスタンスについては、3 つのAZに最大 15 個のレプリカが作成可能。

④バックアップ

Amazon RDS:
- 自動バックアップは最大35日間保持可能。
- 手動スナップショットは無期限に保持可能。
- ポイントインタイムリカバリをサポート。(直近で5 分前まで、保持期間内の任意の時点にデータベースを復元させることが可能)

Amazon Aurora:
- 自動バックアップは最大35日間保持可能。
- 手動スナップショットは無期限に保持可能。
- ポイントインタイムリカバリに加え、指定した時間まで DB クラスターを「巻き戻し」できる「バックトラック」が使用可能。(ポイントインタイムリカバリは新規DBを作成して復元するが、バックトラックは新規でDBを作成しないためより短い時間で対処できる)

⑤フェイルオーバー

Amazon RDS:
- マルチAZ展開により自動フェイルオーバーを提供している。
- フェイルオーバーは通常1〜2分かかる。

Amazon Aurora:
    - 3つのAZに作成した最大15個のレプリカの1つに自動でフェイルオーバーする。
- フェイルオーバーは通常30秒未満で完了する。
- フェイルオーバー中のアプリケーション性能には影響なし。

⑥レプリカ

mazon RDS:
- 同一または異なるリージョンでのリードレプリカをサポートしている。
- 最大5個までのリードレプリカが作成できる。

Amazon Aurora:
- 最大15個までのリードレプリカが作成できる。
- 読み取り負荷が高いアプリケーションに対して低遅延のリードレプリカを提供している。

⑦アベイラビリティゾーン(AZ)

Amazon RDS:
- マルチAZ展開により高可用性が確保できる。
- 各AZは独立して動作し、耐障害性を向上している。

Amazon Aurora:
- デフォルトで3つのAZにわたって動作している。
- Global Databse 機能があり、複数のリージョンにまたがったレプリケーションを構成することが可能。(クロスリージョンレプリケーションに比べ、レイテンシーは通常1秒未満)

⑧ストレージサイズ

Amazon RDS:
- 最大64TBまでのストレージが提供可能。
- ストレージオプションでは主に「プロビジョンド IOPS SSD」と「汎用 SSD」から選択が可能。

Amazon Aurora:
- 自動的にスケールし、最大128TBまで提供可能。
- ストレージオプションでは、「Aurora Standard」と「Aurora I/O 最適化」から選択が可能。


⑨デプロイオプション

Amazon RDS:
- MySQL、PostgreSQL、MariaDB、Oracle、SQL Serverなど、複数のデータベースエンジンから選択できる。

Amazon Aurora:
- MySQLとPostgreSQLに互換性がある。
- Serverless展開オプションを提供しており、自動起動、シャットダウン、スケールアップまたはスケールダウンすることが可能。

まとめ

Amazon AuroraはAmazon RDSのサービスの1つですが、その構成や機能の違いから、それぞれ異なるニーズに応じて優れた選択肢を提供しています。

データベースを選択する際には、これらの特徴の差分を踏まえ、アプリケーションの特定の要件を考慮しながら、最適なソリューションを選ぶことが重要となります。

【覚えるポイント】

  • Amazon RDS :複数のデータベースの種類から選択できる柔軟なデプロイオプションがあるが、Auroraに比べると管理コストが高めである。

  • Amazon Aurora :MySQLとPostgreSQLのみ選択可能であるが、高い可用性や高速なフェイルオーバー、自動管理してくれる点が特徴である。Global DatabseやバックトラックなどAurora特有の機能がある。

ALHについて知る



↓ ↓ ↓ 採用サイトはこちら ↓ ↓ ↓


↓ ↓ ↓ コーポレートサイトはこちら ↓ ↓ ↓


↓ ↓ ↓ もっとALHについて知りたい? ↓ ↓ ↓