はじめに
※文中のOracleは基本的に Oracle Database を指します
Oracle をAWS上で利用したい、という場面でどのような選択肢があるでしょうか?
今までの選択肢は次の三つがありました。
- EC2上に Oracle をインストールして利用する
- RDS for Oracleを利用する
- RDS Custom for Oracleを利用する
今年、Oracle@AWS が登場したことでさらに選択肢が増えました。今までも使い分けにはある程度知識が必要でしたが、さらにOracle@AWSという選択肢が増える形になり、今後日本でGAされるとますます悩まれる方が出てくるかもしれません。また、Oracle@AWSは Autonomous Database on Dedicated Infrastructure(ADB-D) と Exadata Database Service on Dedicated Infrastructure(以下、ExaDB-D) という二つのモデルが提供されています。
したがって、実質的には含めた五つの方式から選択することになり、改めてそれぞれの特徴を整理しておいた方がよいのではないか、と考えました。
4.Oracle(ADB-D) @AWS を利用する
5.Oracle(ExaDB-D) @AWS を利用する
それぞれの特徴について理解することで、AWS上での Oracle 利用における選択の一助になればと考えてます。
AWSへの Oracle の移行は次図のようにまとめられており、今回は主にOracleを利用し続ける移行である「リプラットフォーム」として PaaS を利用する形を想定しています。
Oracle@AWSも同様に リプラットフォーム に該当すると考えています。Oracle on EC2(リホスト)も含めて
(出典:Oracle データベース移行戦略)
AWS上でのOracleの比較
今回は利用にあたって、ユーザが気にするポイントを中心に比較を行っていこうと思います。
- マネジメントレイヤ
- エディション・バージョン
- 利用料金
モニタリングや監査 辺りも気になるところですが、Oracle@AWSのそのあたりの話は Oracle Database@AWS の利用に向けて にて述べたので、今回はもう少し初期の段階での検討で確認したいポイントとして 上記の三つ を比較してみます。
マネジメントレイヤの比較
まずはそれぞれのモデルの各レイヤがどのようにマネージされるのか確認しておきましょう。
なお、同じレイヤでも RDS と Oracle@AWS では実装が違いますので、注意が必要です。
責任共有モデル
| 特徴 | Oracle On Amazon EC2 |
Amazon RDS for Oracle |
Amazon RDS Custom for Oracle |
ExaDB-D Oracle@AWS |
ADB-D Oracle@AWS |
|---|---|---|---|---|---|
| アプリケーションの最適化 | ユーザ | ユーザ | ユーザ | ユーザ | ユーザ |
| スケーリング | ユーザ | AWS | AWSと共有 | Oracleと共有 | Oracle |
| 高可用性 | ユーザ | AWS | AWS1 | Oracleと共有 | Oracle |
| DBのバックアップ | ユーザ | AWS | AWSと共有 | Oracleと共有 | Oracle |
| DBのパッチ適用 | ユーザ | AWS | AWSと共有 | Oracleと共有 | Oracle |
| DBのインストール | ユーザ | AWS | AWSと共有 | Oracleと共有 | Oracle |
| OSのパッチ適用 | ユーザ | AWS | ユーザ | ユーザ | Oracle |
| OSのインストール | ユーザ | AWS | AWSと共有 | Oracleと共有 | Oracle |
| サーバのメンテナンス | AWS | AWS | AWS | Oracle | Oracle |
| ハードウェアのライフサイクル | AWS | AWS | AWS | Oracle | Oracle |
| 電力、ネットワーク、および冷却 | AWS | AWS | AWS | AWS | AWS |
エディションとバージョン
バージョンはLong Term Release(以下、LTS)の19c、23aiと古いバージョンという意味で12cを追加して比較してみます。23aiは 2025年8月9日 時点でインストール版・RDSではリリースされていないため、Oracle@AWSのみでの利用になります。
一方で Standard Edition2 は Oracle@AWS では現時点で利用できません。また、Oracle@AWS、RDS for Oracleともに古いバージョンが使用できないのに対して、EC2上やCustomでは利用することができます。
| Oracleのエディション、バージョン | Oracle On EC2 |
RDS for Oracle |
RDS Custom for Oracle |
ExaDB-D Oracle@AWS |
ADB-D3 Oracle@AWS |
|---|---|---|---|---|---|
| Standard Edition 12c | 〇 | × | 〇 | × | × |
| Enterprise Edition 12c | 〇 | × | 〇 | × | × |
| Standard Edition 19c | 〇 | 〇 | 〇 | × | × |
| Enterprise Edition 19c | 〇 | 〇 | 〇 | 〇 | 〇 |
| Standard Edition 23ai | × | × | × | × | × |
| Enterprise Edition 23ai | × | × | × | 〇 | 〇 |
利用料金
Oracle@AWSは現時点で利用できるモデルが筐体を利用するモデルとなるため、RDS などと直接比較する形は難しいです。とはいえ何かしら軸を決めて、ということで次のような前提でざっくり利用料金を計算してみます。
- 16vCPU、128GBメモリ
- AWS: db.r6i.4xlarge相当
- Oracle@AWS: 8 OCPU割当(ADB‐Dはオートスケールを想定)
- 1TBストレージ(バックアップ料金含まず)
- RDS, EC2: io2 相当、30,000 IOPS
- Oracle@AWS: 標準
- 構成
- RDS, EC2: シングル構成
- Oracle@AWS: RAC構成
- 30日(月額イメージ)
| Oracle On Amazon EC24 |
Amazon RDS for Oracle5 |
Amazon RDS Custom for Oracle6 |
ExaDB-D Oracle@AWS7 |
ADB-D Oracle@AWS7 |
|
|---|---|---|---|---|---|
| BYOL8 |
75万円 (内ストレージ60万円) |
80万円 (内ストレージ60万円) |
80万円 (内ストレージ60万円) |
190万円 (内筐体170万円) |
180万円 (内筐体170万円) |
| ライセンス込み(SE) | - |
105万円 (内ストレージ60万円) |
- | - | - |
| ライセンス込み(EE) | - | - | - |
280万円 (内筐体170万円) |
210万円 (内筐体170万円) |
リソースの選択
EC2、RDS、RDS Customでは利用できるリソースとしてそれぞれコンピュートレイヤ(コア種別、vCPU数、メモリなど)を選択することが可能です。また、ストレージレイヤも通常の gp2 などから io2 のような高速モデルを選択することが可能です。
一方、Oracle@AWSでは 筐体を占有する形となるため、X9MやX11Mといった筐体のモデルを選択する形になります。X9MやX11M、それぞれの説明は 「X9MおよびX11MスケーラブルExadataインフラストラクチャの概要」 などに記載されていますが、新しい X11M を選択する形で基本的には問題ないと考えています。
まとめ
既存の RDS と Oracle@AWS では管理主体が違う事は当然ながら、利用料金は大きく異なることが確認できます。基本的にRDSなどがクラウドサービスで従量課金であるのに対し、Oracle@AWSではコンピュートは従量となりますが、インフラ(筐体)は固定料金となるため、あらかじめ確認しておく必要があるでしょう。
エンタープライズの現場だと 開発環境と本番環境を合わせる、とか、高可用性の確保の要件がある、など、複数の筐体を別に準備する必要が出てくる場合もあり、そのような場合にはさらに利用料金が必要となってきます。
逆にそういった環境でのコスト負担ができる場合に利用する環境として Oracle@AWS が提供されている、と考えています。
とはいえ、今までの RDS と Oracle@AWS のコストの差はそれなりにあるため、利用する場合にはデータベースを集約するなどの戦略もまとめて検討する必要があると想定しています。
-
RDS Custom for Oracleも 2025/6/30 から Multi-AZ 構成が利用できるようになりました ↩
-
AWS上ではStandard Edition2。Standard Edition と Standard Edition2は別のものではありますが、今回は省略して大きなくくりでは同一として扱います ↩
-
Standard Edition2のライセンスをBYOLする ことも可能です ↩
-
別途ライセンスを購入する必要があります。AWS(RDS, EC2) と Oracle@AWS ではライセンス係数の考え方が違うため、注意が必要です ↩
