【サービス比較】AWSとOCIの主要機能比較

普段私はAWSを中心に開発を担当しているのですが、Oracle DBAということでOCIについて、様々な質問をいただく機会があります。
その中で「OCIってSaaSじゃないの？」、「AWSと同じような使い方はできるの？」といった質問をいただくことがありました。
今回は自身の備忘録も兼ねて、OCIの立ち位置とAWSとのサービス比較を記載させていただきます。

## OCIはOracle CloudサービスにおけるPaas・IaaS
まず、「OCIってSaaSじゃないの」と言った質問についての回答です。
私の認識ではPaaS、IaaSに該当するものと考えています。
元々Oracle CloudとしてはSaaSサービス(Oracle Cloud Applications)が先行していたため
SaaSの認識をもたれている方もいるかと思います。
一般的に現在のOCIは、Gen2と呼ばれる2018年にアーキテクトを一新して新規構築されたPaaS/IaaSサービスのことを指すケースが多いです。

![OCI-XaaS.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1946634/a70894d5-92a9-a2b7-be59-9e70691046a5.png)


## AWSとOCIの基本サービス比較
続いて「AWSと同じような使い方はできるの？」といった質問についての回答です。
OCIはIaaS/PaaSとお話ししましたが、パブリッククラウドにおけるPaaS/IaaSといえば
AWSが市場を席巻しているイメージがあります。
実はAWSでよく利用される基本的なサービスは、OCIでも類似するサービスが存在しており
AWSのような利用が可能です。

主要サービスについて、同じ様なことを実現できるサービス(厳密には異なるものもあり)を
まとめてみましたのでご参考ください。
(DocumentについてはOCI公式マニュアルの「概要」へのリンクを記載しています。)

### ネットワーク関連

| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
|仮想ネットワーク | VPC|VCN|[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Tasks/managingVCNs_topic-Overview_of_VCNs_and_Subnets.htm#Overview)|
|仮想ネットワークサブネット  |サブネット|サブネット  | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Tasks/managingVCNs_topic-Overview_of_VCNs_and_Subnets.htm#Overview)|
|ルーティング  |ルートテーブル  |ルートテーブル  | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Tasks/managingroutetables.htm)||
|名前解決   |Route53   |DNS   | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/DNS/Concepts/dnszonemanagement.htm)|
|専用線接続   |Direct connect   |Fast Connect   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Concepts/fastconnectoverview.htm#FastConnect_Overview) |
|ロードバランサー（レイヤ4）   |NLB   |NLB   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/NetworkLoadBalancer/NetworkLoadBalancers/network_load_balancer_management.htm)|
|ロードバランサー（レイヤ7）   |ALB   |FLB   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/NetworkLoadBalancer/overview.htm) |

### コンピューティング

| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
|仮想サーバ   |EC2 |Compute|[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Compute/Concepts/computeoverview.htm)|
|サーバレスコンピューティング |Lambda |Function|[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Functions/Concepts/functionsoverview.htm)|
|コンテナ |ECS   |OKE   | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/ContEng/Concepts/contengoverview.htm)  |

### ストレージ
| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
| サーバストレージ  | EBS  |  Block Volume| [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Block/Concepts/overview.htm)  |
| 共有ファイルストレージ  | EFS  |  FSS |  [LINK](https://docs.oracle.com/ja-jp/iaas/Content/File/Concepts/filestorageoverview.htm)  |
| 多目的ストレージ  | S3  | Object Strage  |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Object/Concepts/objectstorageoverview.htm)|
| アーカイブストレージ  | Glacier  | アーカイブストレージ  |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Archive/Concepts/archivestorageoverview.htm#Overview_of_Archive_Storage) |

### セキュリティ＆アイデンティティ
| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
|ユーザ・ポリシー管理 | IAM  |IAM   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Identity/Concepts/overview.htm#Overview_of_Oracle_Cloud_Infrastructure_Identity_and_Access_Management)|
|サブネットACL |セキュリティグループ |セキュリティグループ   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Concepts/networksecuritygroups.htm)|
|NIC/リソースアクセス制御 |ネットワークACL   |セキュリティリスト   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Network/Concepts/securitylists.htm)|
| 鍵管理  |KMS   |vault  | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/KeyManagement/Concepts/keyoverview.htm)  |
| WebアプリケーションFW | AWS WAF  | WAF  |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/WAF/Concepts/overview.htm)   |
| DDoS対策  |AWS Shield   | DDoS Protection  | (*1) |
| セキュリティ評価  | AWS Inspector  | Oracle Cloud Gurd  | [LINK](https://docs.oracle.com/ja-jp/iaas/cloud-guard/using/cg-concepts.htm)  |
| 脅威検出  | AWS Gurd Duty  | Oracle Cloud Gurd  | [LINK](https://docs.oracle.com/ja-jp/iaas/cloud-guard/using/cg-concepts.htm)  |
|証明書|ACM|Certificates|[LINK](https://docs.oracle.com/en-us/iaas/Content/certificates/overview.htm)|
*1 DDoS ProtectionはOCIの標準機能として、レイヤー3/４は設定なしで動作。レイヤー7はWAFで対応可能。


### データベース
OCIはOracle/MySQLベースのものが主流となりAWS比較でプロダクトの幅は狭くなります。
ただし、同様プロダクトベースのAWSサービスと比較した際に
RDSで利用できないDBプロダクト本来の高機能や、コスト/性能比較でメリットが出しやすいです。

【O】Oracleベース
【M】MySQLベース


| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
|マネージドDBサービス   | RDS  | Database Cloud Service【O】  |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Database/Concepts/databaseoverview.htm) |
|マネージドDBサービス   | RDS  |MySQL Database Service【M】  | [LINK](https://docs.oracle.com/ja-jp/iaas/mysql-database/doc/overview-mysql-database-service.html)|
|High Tx/高可用マネージドDB   | Aurora  | Autonomous Transaction Processing【O】*2 | [LINK](https://docs.oracle.com/en/cloud/paas/atp-cloud/index.html)|
|High Tx/高可用マネージドDB   | Aurora  | Exa Cloud Service【O】| [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Database/Concepts/exaoverview.htm)|
|データウェアハウス  | RedShift  |  Autonomous Data Warehouse【O】*2  |[LINK](https://docs.oracle.com/en/cloud/paas/autonomous-data-warehouse-cloud/index.html)|
|データウェアハウス  | RedShift  |  HeatWave【M】 |[LINK](https://docs.oracle.com/ja-jp/iaas/mysql-database/doc/heatwave.html)|
|No SQL(key-value)  | DynamoDB  |  Oracle NoSQL Database Cloud Service  | [LINK](https://docs.oracle.com/en/cloud/paas/nosql-cloud/index.html)|
|No SQL(document)  | DocumentDB|  Autonomous JSON Database【O】 *2  |[LINK](https://docs.oracle.com/en/cloud/paas/autonomous-json-database/index.html)|

*2 Autonomousのワークロードタイプの１つ。Autonomous全体概要はこちらを参照[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Database/Concepts/adboverview.htm)

### 可観測性及び管理
| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
|監視  | Cloudwatch  |OCI Minitoring   | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Monitoring/Concepts/monitoringoverview.htm)|
|監査   | Cloudtrail  | OCI Audit  | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Audit/Concepts/auditoverview.htm)|
| OS統合・バッチ  | System Manager  |OS Management   |[LINK](https://docs.oracle.com/ja-jp/iaas/os-management/osms/osms-overview.htm) |

### 統合
| サービス概要 | AWS | OCI|Document|
|:-|:-|:-|:-|
| ワークフロー  | Step Funcion|Oracle Integration  |[LINK](https://docs.oracle.com/ja-jp/iaas/integration/doc/overview-oracle-integration-generation-2.html)|   
| メール送信サービス| SES |Notifications   |[LINK](https://docs.oracle.com/ja-jp/iaas/Content/Notification/Concepts/notificationoverview.htm)|   
| 通知サービス  | SNS  | Notifications  | [LINK](https://docs.oracle.com/ja-jp/iaas/Content/Notification/Concepts/notificationoverview.htm)|

## 終わりに
ここまで見ていただくとOCIでもAWS同等の利用が可能に見えてきます。
この考え自体は間違いではないのですが、両クラウドはそれぞれ得意分野/戦略は異なる箇所が多く
サービスの詳細やご紹介できなかった周辺サービスに表れてきていると、個人的に考えています。
このあたりは改めて、別記事でお話しできたらと思います。
（筆者はユースケース中心アプローチとデータ中心のアプローチのように感じています。）

本記事では、OCIもAWSのようなPaaS/IaaSサービスを兼ね備えており
似たような利用も可能であることを知っていただけたらと思います。