Cloud Service
OCI Object Storage
Oracle Cloud 上の高耐久・大容量オブジェクトストレージ。バックアップからデータレイク、静的コンテンツ配信まで幅広く使える。AWS の Amazon S3 に相当。
- 1.ファイルをオブジェクトとしてバケットに無制限保存。
- 2.リージョン内で自動多重化し高耐久、HTTP(S) でアクセス。
- 3.AWS の S3 相当。3 階層の使い分けでコスト最適化。
解決する課題
サーバーのディスク容量を気にせず、必要なだけデータを保存できます。
- ストレージの事前プロビジョニング不要で、容量無制限にデータを保存
- データはリージョン内で自動的に複数コピーされ、消失リスクが極めて低い
- REST API / SDK / CLI / pre-authenticated request で、どこからでも HTTP(S) アクセス
- Standard / Infrequent Access / Archive の3階層でアクセス頻度に応じてコスト最適化
主要概念と用語
- バケット (Bucket): オブジェクトを入れる論理的な入れ物。コンパートメント内・特定リージョンに属する(S3 のようなグローバル一意の命名は不要で、名前空間+コンパートメント内で一意)
- オブジェクト (Object): 保存する実体(データ+メタデータ)。単一オブジェクトは最大 10 TiB
- 名前空間 (Namespace): テナンシごとに割り当てられる一意の論理コンテナ。全バケットのトップ階層で、URL に含まれる(S3 の「アカウント+グローバル名」に相当する位置づけ)
- ストレージ階層 (Storage Tier): Standard / Infrequent Access / Archive。バケット作成時に Standard か Archive を選ぶ
- 可視性 (Visibility): バケットは既定で Private。Public に変更すると認証なしで読める
- Pre-Authenticated Request (PAR): 期限付き署名 URL。認証情報なしでオブジェクト/バケットへの一時アクセスを許可(S3 の Pre-signed URL 相当)
- コンパートメント (Compartment): リソースを論理的に分離・IAM 制御する単位。バケットは必ずどこかのコンパートメントに所属
仕様・制限・クォータ
- 単一オブジェクト最大 10 TiB。単一 PUT は 50 GiB まで(それ以上はマルチパートアップロード)
- 強い整合性 (strong consistency): 書き込み後の読み取りで常に最新データを取得
- バケットは既定で Private(公開するには明示的に Public 設定が必要)
- データは保存時に既定で暗号化(Oracle 管理鍵。任意で Vault の顧客管理鍵に変更可)
- バージョニングは既定で無効。バケット単位で有効化でき、上書き/削除時に旧バージョンを保持
- リソース上限(バケット数など)はサービス制限として管理され、引き上げ申請が可能
内部の仕組み
Object Storage は、キー(オブジェクト名)から実体を引く分散オブジェクトストアです。データは取り込み時に複数のストレージノード・障害ドメインへ冗長化され、整合性検証(チェックサム)と自己修復によって高い耐久性を保ちます。
「フォルダ」は見かけ上の表現で、実体は images/2026/cat.png のようなフラットなキー空間です。コンソールやツールは区切り文字(/)で擬似的な階層として表示しているだけです。
Object Storage に「サブバケット」や入れ子バケットはありません。フォルダに見えるのはオブジェクト名のプレフィックスで、実体は平坦なキー空間。S3 と同じく、prefix と delimiter で疑似ディレクトリを表現します。
設計パターン / ベストプラクティス
- 静的コンテンツ配信: バケットの前段に CDN を置き、PAR またはカスタムドメインで配信(バケットは Private のまま)
- データレイク: 生データを Object Storage に集約し、OCI Data Flow(Spark) や Autonomous Database から直接クエリ
- イベント駆動: オブジェクト作成/更新イベントを Events サービスで捕捉し、Functions を起動(サムネ生成など)
- ライフサイクル管理: ライフサイクルポリシーで一定期間後に Standard → Infrequent Access → Archive へ自動移行、または自動削除
- 大容量転送: 数百 GB〜TB はマルチパートアップロード、オフライン移行は Data Transfer Appliance を利用
運用・監視・トラブルシュート
- Monitoring サービスでバケットのメトリクス(リクエスト数、保存容量など)を可視化
- 操作の監査は Audit サービス(すべての API 呼び出しを記録)
- Logging でアクセスログ(読み取り/書き込みイベント)を有効化し、監査・分析
- 「404 NotAuthorizedOrNotFound」は、IAM ポリシー不足・コンパートメント/名前空間の指定ミス・バケット未存在が大半(権限不足を理由まで明示しない仕様)
コスト
「保存量」だけでなく「リクエスト数」やデータ取り出しにも課金されます。アクセス頻度で階層を使い分けます。
| ストレージ階層 | 想定アクセス | 特徴 |
|---|---|---|
| Standard | 高頻度 | 標準。低レイテンシで即時アクセス |
| Infrequent Access | 低頻度・即時取り出し | 保存単価が安い/取り出しに別途課金 |
| Archive | アーカイブ・長期保管 | 最安/復元(リストア)が必要・取り出しに時間 |
セキュリティ
- アクセス制御は IAM ポリシー。コンパートメント/バケット単位で最小権限を付与するのが基本
- バケットは既定で Private。公開は明示操作が必要で、共有は期限付きの PAR が安全
- 保存時暗号化は既定で有効(Oracle 管理鍵)。要件に応じ Vault の顧客管理鍵へ。転送時は TLS
- 改ざん・誤削除対策にバージョニングと**リテンションルール(保持ロック)**を併用
共有のためにバケットを Public に切り替えるのは NG(意図しない全公開・データ流出の典型)。一時的な共有は期限付き PAR(Pre-Authenticated Request) を発行し、用が済んだら失効させるのが正解。
関連サービス・比較(AWS との対応)
Object Storage は機能・位置づけともに Amazon S3 に対応します。用語の対応関係を押さえると移行・設計がスムーズです。
| 観点 | OCI Object Storage | Amazon S3 |
|---|---|---|
| 位置づけ | OCI の基本オブジェクトストレージ | AWS の基本オブジェクトストレージ |
| 入れ物 | バケット(コンパートメント内・リージョン単位) | バケット(グローバル一意の名前) |
| 階層 | Standard / Infrequent Access / Archive | Standard / Standard-IA / Glacier 系 |
| 署名付き一時URL | Pre-Authenticated Request (PAR) | Pre-signed URL |
| 権限制御 | IAM ポリシー + コンパートメント | IAM / バケットポリシー |
| 単一オブジェクト上限 | 10 TiB | 5 TB |
| 整合性 | 強い整合性 | 強い整合性 |
ハンズオン / CLI例
# テナンシの名前空間を確認(URL やコマンドで多用する)
oci os ns get
# バケットを作成(既定で Private、Standard 階層)
oci os bucket create \
--compartment-id ocid1.compartment.oc1..xxxx \
--name my-bucket-2026
# ファイルをアップロード
oci os object put \
--bucket-name my-bucket-2026 \
--file ./index.html \
--name index.html
# バケット内のオブジェクトを一覧
oci os object list --bucket-name my-bucket-2026
# 期限付きの Pre-Authenticated Request を発行(24時間有効・読み取り専用)
oci os preauth-request create \
--bucket-name my-bucket-2026 \
--name share-link \
--access-type ObjectRead \
--object-name index.html \
--time-expires 2026-06-04T00:00:00Z
OCI Service
OCI Object Storageを実務で読む
TL;DRは入口です。実際に選ぶ・使う段階では、何を解決するか、何と比較するか、導入後にどこで詰まるかまで見る必要があります。
解決すること
ストレージ
比較で見る軸
クラウド: OCI / カテゴリ: ストレージ / 難易度: basic
導入後に効く点
リージョン内で自動多重化し高耐久、HTTP(S) でアクセス。
先に潰すリスク
サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。
- クラウド
- OCI
- カテゴリ
- ストレージ
- 難易度
- basic
- 関連資格
- —
- 設計柱
- reliability / security / cost / performance
判断チェックリスト
- 自社の用途が「ストレージ / reliability」に近いか確認する。
- 強みである「ファイルをオブジェクトとしてバケットに無制限保存。」が本当に評価軸になるか確認する。
- 注意点の「サービス単体ではなく、権限、ネットワーク、監視、課金、バックアップを含めて設計する必要がある。」を運用で吸収できるか確認する。
- 公開値や仕様値は、対象プラン・対象機種・対象リージョンまで確認する。
- 既存システム、ID、ネットワーク、監視、バックアップとの接続方法を先に洗い出す。
- 小さく試してから、本番移行、権限設計、障害時手順、コスト監視を決める。
他クラウドの同等サービス
役割が近いサービスです。設計の置き換えや比較検討の参考に。