クラウド
初級

S3 Storage(エススリーストレージ)

S3 Storageは、クラウドコンピューティング分野で使用される技術・サービスです。

0 回閲覧
0 いいね
2026/4/25 更新
関連タグ
クラウド
インフラ
初心者向け

S3 Storage(Amazon S3)

概要

Amazon S3(Simple Storage Service)は、AWS が 2006 年に提供開始した、業界初のオブジェクトストレージサービスです。99.999999999%(11 ナイン)の耐久性を誇り、無制限の容量、高い可用性、豊富な機能で、クラウドストレージのデファクトスタンダードとなっています。

主要特徴

  • 無制限容量
  • 高い耐久性: 99.999999999%
  • 高可用性: 99.99%
  • スケーラブル: ペタバイト級
  • HTTP API: REST
  • 多様なストレージクラス
  • バージョニング
  • ライフサイクル管理
  • 暗号化

基本概念

Bucket

  • オブジェクトの入れ物
  • グローバルに一意な名前
  • リージョンに属する

Object

  • キー、値、メタデータ
  • 最大 5 TB

Key

  • オブジェクトの識別子
  • フォルダ風構造も可能
s3://my-bucket/photos/2024/image.jpg

Region

  • データ保存の地理的場所
  • 東京 = ap-northeast-1

ストレージクラス

Standard

  • 一般用途
  • 高頻度アクセス
  • $0.023/GB/月

Intelligent-Tiering

  • 自動階層化
  • アクセスパターンに応じて
  • 追加料金あり

Standard-IA(Infrequent Access)

  • 低頻度アクセス
  • $0.0125/GB/月
  • 取得料金あり

One Zone-IA

  • 単一 AZ
  • $0.01/GB/月
  • 低コスト

Glacier Instant Retrieval

  • アーカイブ、即時取得
  • $0.004/GB/月

Glacier Flexible Retrieval

  • アーカイブ、分〜時間
  • $0.0036/GB/月

Glacier Deep Archive

  • 長期アーカイブ
  • $0.00099/GB/月
  • 取得時間: 12 時間

主要機能

バージョニング

  • 全バージョン保持
  • 誤削除からの回復

ライフサイクル管理

  • 自動階層移行
  • 自動削除
{
  "Rules": [{
    "Status": "Enabled",
    "Transitions": [
      { "Days": 30, "StorageClass": "STANDARD_IA" },
      { "Days": 90, "StorageClass": "GLACIER" }
    ],
    "Expiration": { "Days": 365 }
  }]
}

暗号化

  • SSE-S3: S3 管理の鍵
  • SSE-KMS: KMS 管理
  • SSE-C: 顧客提供の鍵
  • Client-Side: クライアント暗号化

アクセス制御

  • IAM ポリシー
  • バケットポリシー
  • ACL
  • Block Public Access: 推奨

イベント通知

  • オブジェクト作成、削除時
  • Lambda、SQS、SNS 連携

レプリケーション

  • クロスリージョン
  • 同一リージョン
  • 災害対策

S3 Object Lock

  • WORM(Write Once, Read Many)
  • コンプライアンス
  • ランサムウェア対策

S3 Transfer Acceleration

  • CloudFront 経由
  • グローバル高速転送

S3 Select

  • SQL でオブジェクト検索
  • 転送量削減

CLI 例

# バケット作成
aws s3 mb s3://my-bucket

# アップロード
aws s3 cp file.txt s3://my-bucket/
aws s3 cp dir/ s3://my-bucket/dir/ --recursive

# ダウンロード
aws s3 cp s3://my-bucket/file.txt ./

# 同期
aws s3 sync dir/ s3://my-bucket/dir/

# 削除
aws s3 rm s3://my-bucket/file.txt

# 一覧
aws s3 ls s3://my-bucket/

SDK 例

Python(boto3)

import boto3

s3 = boto3.client('s3')

# アップロード
s3.upload_file('file.txt', 'my-bucket', 'file.txt')

# ダウンロード
s3.download_file('my-bucket', 'file.txt', 'file.txt')

# オブジェクト取得
response = s3.get_object(Bucket='my-bucket', Key='file.txt')
content = response['Body'].read()

# リスト
for obj in s3.list_objects_v2(Bucket='my-bucket')['Contents']:
    print(obj['Key'])

# 署名付き URL
url = s3.generate_presigned_url(
    'get_object',
    Params={'Bucket': 'my-bucket', 'Key': 'file.txt'},
    ExpiresIn=3600
)

ユースケース

1. 静的 Web サイトホスティング

  • HTML、CSS、JS
  • CloudFront と組み合わせ

2. バックアップ

  • データベース
  • ログ
  • アーカイブ

3. データレイク

  • 生データ保存
  • Athena で分析
  • Glue カタログ

4. コンテンツ配信

  • 画像、動画
  • CloudFront 経由

5. アプリケーションデータ

  • ユーザーアップロード
  • ファイル共有

6. ログ集約

  • ELB ログ
  • CloudTrail ログ

料金(2026、us-east-1)

ストレージ

  • Standard: $0.023/GB/月
  • IA: $0.0125/GB/月
  • Glacier Deep Archive: $0.00099/GB/月

リクエスト

  • PUT/POST: $0.005/千リクエスト
  • GET: $0.0004/千リクエスト

データ転送

  • S3 → インターネット: $0.09/GB(最初の 10TB)
  • 同一リージョン内: 無料

代替サービス

サービスプロバイダ
Google Cloud StorageGoogle
Azure Blob StorageMicrosoft
Cloudflare R2Cloudflare(Egress 無料)
Backblaze B2Backblaze(低価格)
WasabiWasabi(定額)
MinIOオンプレミス(S3 互換)

S3 互換ストレージ

  • MinIO: オンプレミス
  • Ceph Object Gateway
  • SeaweedFS
  • Cloudflare R2

ベストプラクティス

  1. Block Public Access 有効
  2. バージョニング: 本番データ
  3. ライフサイクル: コスト最適化
  4. 暗号化: デフォルト有効
  5. タグ付け: コスト管理
  6. Intelligent-Tiering: 未知のアクセスパターン
  7. VPC Endpoint: プライベート通信
  8. CloudTrail: アクセスログ
  9. MFA Delete: 重要データ
  10. Cross-Region Replication: 災害対策

関連用語

  • Object Storage
  • CloudFront
  • IAM、Bucket Policy
  • Glacier
  • Cloudflare R2
この記事について
カテゴリークラウド
難易度初級
作成日2025/7/11