Skip to content
Latchkey

S3 vs Cloudflare R2: object storageの選択

Amazon S3は最も深いエコシステムを備えた業界標準のobject store。Cloudflare R2はegress料金ゼロのS3互換ストレージです。

S3は最も成熟したobject storeで、最も幅広い機能セット (lifecycle、レプリケーション、storage class、AWSとの深い統合) と最大のエコシステムを備えています。R2はS3 APIと互換で、Cloudflareのedge上で動き、決定的にegress料金がかからないため、帯域幅を多く使うワークロードやCDN経由のassetに魅力的です。S3は機能とAWS統合を重視し、R2はegressの経済性を重視します。

S3Cloudflare R2
Egress料金ありなし
APIS3 (ネイティブ)S3互換
機能最も深い (class、lifecycle)拡大中
エコシステム最大 (AWS)Cloudflareプラットフォーム
最適な用途AWSネイティブ、リッチな機能egressが多い、CDNのasset

ユースケースとコスト

S3は、高度なstorage class、lifecycleルール、AWSとの緊密な統合を必要とするAWSネイティブなワークロードに向いています。R2は、egressがコストを支配する帯域幅の多い用途 (メディア、ダウンロード、公開のasset) に向いており、Cloudflare WorkersやCDNと統合します。S3互換性により、読み書きコードの移行が容易になります。

CIとdeployでは

どちらもOIDCまたはスコープ付きトークンを使い、CIからS3 API経由でアップロード (アーティファクト、buildの出力、静的asset) を受け付けます。いずれもマネージドrunnerから動作し、より速いrunnerがアーティファクトのアップロードステップを短縮します。

結論

リッチなストレージ機能と統合を必要とするAWSネイティブなワークロードなら: S3。帯域幅コストが支配的な、egressの多いまたはCDN経由のassetなら: Cloudflare R2 (egressゼロ、S3互換)。多くのチームはAWS内部のデータにS3を保ち、公開の高egressなassetにR2を使います。

関連ガイド