0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS】RDS と Aurora の違いをざっくり解説

Posted at

AWS 上でリレーショナルデータベースを使いたい場合、Amazon RDSAmazon Aurora という選択肢がよく挙がりますよね。
ただ、「Aurora って RDS の一種じゃないの?」と混乱する方もいるのではないでしょうか。
この記事では、RDS 全体Auroraの関係、および違いをざっくりまとめてみます!


1. まずは RDS とは?

RDS (Relational Database Service) は、AWS が提供する マネージドなリレーショナルデータベース サービスの総称です。
RDS では以下のエンジンがサポートされています。

  • MySQL
  • PostgreSQL
  • MariaDB
  • Oracle
  • SQL Server
  • Amazon Aurora (MySQL/PostgreSQL 互換)

ポイントは、Aurora も RDS の一部に含まれるエンジンの一つ、ということ。
RDS は「AWS がデータベースのインフラを管理してくれるから、ユーザーはアプリ側の構築に集中できる」サービスです。

RDS 全体の特徴

  • 複数のデータベースエンジンから選べる
    MySQL や PostgreSQL、オラクル系などを使いたい場合にも対応。
  • DB のパッチ適用、バックアップ、リストアなどが自動化可能
    いわゆる運用負荷を大きく下げるマネージドなメリット。
  • スケーリング
    インスタンスタイプやストレージサイズを変更して拡張/縮小が比較的容易。
  • オープンソースや商用 DB をクラウドでそのまま動かしたい
    オンプレの MySQL や PostgreSQL、Oracle 等を AWS 移行する際にも RDS が選ばれがち。

2. Aurora とは?

Aurora は、AWS が独自に開発した高性能・高可用性のリレーショナルデータベースエンジン です。
一応カテゴリとしては「RDS エンジンのひとつ」ですが、中身はかなり違う設計になっています。

Aurora の主な特徴

  1. MySQL / PostgreSQL 互換

    • Aurora (MySQL 互換) と Aurora (PostgreSQL 互換) の 2 種類があり、既存のアプリを大きく書き換えなくても移行しやすい。
  2. 高パフォーマンス

    • オリジナルの MySQL や PostgreSQL に比べて最大 5~10 倍のスループットを実現すると言われている(AWS 公称値)。
  3. ストレージが自動スケール & 高可用性

    • データは 6 つのコピーを 3 つの AZ (Availability Zone) にまたがって保存。ディスク障害に強い。
    • ストレージは 10GB~128TB まで段階的に自動拡張される。
  4. 高速なフェイルオーバー

    • 高可用性構成 (Aurora Replica) を作れば、障害発生時に数十秒以内でフェイルオーバー可能。

Aurora ならではのメリット

  • 自動スケールするストレージ複数 AZ にまたがるレプリカ の仕組みで、可用性&耐障害性が高い。
  • 高いパフォーマンス:クラウド向けに最適化されたエンジンなので、ディスク I/O が高速。
  • Serverless オプション(Aurora Serverless)を利用すれば、負荷に応じて自動的にキャパシティを上下させることも可能。

Aurora のデメリットや注意点

  • Aurora 特有の設計
    • MySQL や PostgreSQL と互換性はあるが、細かいバージョンの差や対応していない機能がある場合も。
  • ややコストが高め
    • 一般的な MySQL / PostgreSQL RDS よりも高性能な分、コストは少し高い傾向にある。
  • バージョンの進み方がオリジナルより遅いことも
    • オリジナルのエンジンに比べて、Aurora 側での対応が遅れる場合がある。

3. RDS と Aurora の違いをざっくり表に

項目 RDS 全体 Aurora
エンジン MySQL, PostgreSQL, MariaDB, Oracle, SQL Server Aurora MySQL / Aurora PostgreSQL (独自エンジン)
パフォーマンス オリジナルエンジンそのまま 高速化されたクラウドネイティブエンジン
データ保管 & レプリカ ストレージは EBS 上にある。フェイルオーバー可 3AZ × 各 AZ 2 コピー → 計 6 コピーで冗長化
スケーリング インスタンス&ストレージを手動で拡張 ストレージが自動拡張 (10GB ~ 128TB)、Aurora Serverless も選択可
互換性 使いたい DB とバージョンを選択 MySQL / PostgreSQL と互換性あり
コスト感 小~中規模でオリジナル DB をそのまま使うなら安め 若干割高(そのぶん高性能、高可用性)
ユースケース一例 既存オンプレ DB と同じバージョンをクラウド移行 大量トランザクション、高可用性が必須の場合など

4. どう使い分けるの?

  • まずは既存のデータベースをAWSに移行したいだけ
    • Oracle や SQL Server、特定バージョンの MySQL / PostgreSQL をそのまま使いたいなら、RDS の通常エンジンが無難。
  • 性能や可用性を重視してクラウドネイティブな DB を使いたい
    • Aurora がベストチョイス。高スループット、ディスク障害への強さ、データ自動スケールなどが魅力。
  • サーバーレスで自動スケールする DB を使いたい
    • Aurora Serverless (v1/v2) を選ぶ手もある。アクセスの多寡に合わせてキャパシティを自動調整。

もし最初は小規模で始めて、将来的に拡張の見込みがあるなら、最初から Aurora を使っておくと柔軟に対応しやすいです。
ただしコストとのバランスがあるので、小さなアプリや実験用途なら RDS のオリジナル MySQL/PostgreSQL のほうが安上がりなことも多いです。


まとめ

  • RDS は AWS マネージドのリレーショナル DB サービス群の総称。Oracle や SQL Server 含めていろんなエンジンを利用可能。
  • Aurora は その RDS エンジンのひとつ だけど、AWS 独自の設計で 高パフォーマンス & 高可用性 を実現している特別枠。
  • 性能、可用性、スケーラビリティを最重視するなら Aurora。既存 DB をそのままクラウドに持ってきたい or 小規模で安く済ませたいなら RDS の各エンジンが向いてる。

ぜひ自分のアプリやシステム要件(性能要件、可用性、コスト)を考慮しながら、ベストな DB 選択をしてみてください!

もし何か質問や実際に使ってみた経験談があれば、コメントで教えてください!
この記事が少しでもお役に立てればうれしいです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?