Amazon S3 Express One Zone

出典:AWS Blackbelt

S3 Express One Zoneとは

  • 一桁msのリクエストレイテンシ
    • レイテンシが最も低いストレージクラス
    • 指定した単一のAZにデータを配置
  • 10倍の高速化 + リクエスト料金は半額(Standardクラスと比較して)
  • ユースケースとしては頻繁にリクエストされるデータ
    • 機械学習、データ分析、コンテンツ作成など

実現する3つのポイント

1. コンピュートリソースと同じAZにデータを配置

  • 耐久性は99.999999999%(イレブンナイン)、可用性は99.5%
  • ただし、シングルAZのアーキテクチャのため、AZ障害でのデータ損失の可能性はある

2. ディレクトバケット

バケットの違い

汎用バケット プレフィックスごとにスケール、負荷に応じて段階的にスケーリング
ディレクトリバケット 常に高い性能を発揮、プレフィックスに依存しない
  • 汎用バケットとディレクトリバケット間をシームレスに変更することはできない
  • ただし、シームレスに移行はできないがオブジェクトの移行は可能
  • ディレクトリバケットの命名規則として、ベース名にAZ IDが含まれる
  • ベース名+AZサフィックス(例:–use1-az-6–x-s3)

S3 の種類

S3 Express One Zone 最も頻繁にアクセスされる ディレクトリバケット
S3 Intellogent-Tiering アクセスパターンが変化する 汎用バケット
S3 Standard 頻繁にアクセスされる 汎用バケット
S3 Standard-IA 頻繁にアクセスされない 汎用バケット
S3 One Zone-IA アクセス頻度が低く再作成可能 汎用バケット
S3 Glacier Instant Retrieval ほとんどアクセスされない 汎用バケット
S3 Gracier Flexible Retrieval アーカイブデータ 汎用バケット
S3 Gracier Deep Archive 長期アーカイブデータ 汎用バケット

制約

  • アクセスが90日間ないディレクトリバケットは、非アクティブ状態に移行
    • データは保持されるが、一時的に読み書き不可(503)
    • アクセスリクエスト後、通常数分以内にアクティブ状態へ移行
  • サポートされていない機能の一例(用途がレイテンシー重視のワークロードのため)
    • AWS CloudTrailデータプレーンイベント(オブジェクト操作)
    • 静的ウェブサイトホスティング
    • S3ライフサイクル
    • オブジェクトタグ
    • S3 Storage Lens
    • SSE-KMS,SSE-C

3. SDKによる効率的なアクセス

  • レイテンシを最小限に抑えるためセッションベースでの認証を採用
  • AWS SDKを使用することでユーザーに変わりセッション作成・管理

ネットワークとセキュリティ

2種類のAPIオペレーション

リージョンエンドポイントAPIオペレーション バケットレベルの操作 IAM認証
ゾーンエンドポイントAPIオペレーション オブジェクトレベルの操作 セッショントークン
※CopyObject,HeadBucketのみIAM認証を利用

セッションベースの認証

下記の認証の操作をSDKがラップしてくれる

  1. CreateSession:操作したいバケットとR/W,R/Oを指定
  2. 認証情報;一次的な認証情報とセッショントークン
  3. データへアクセス:認証情報の有効性を確認(有効期限5分)

IAMポリシーの記載方法は既存のものと異なる

1
2
3
4
5
6
7
...
"Action":"s3express:CreateSession"
...
"Condition": {
"StringEquals": {"s3express:SessionMode":"ReadOnly"}
}
...

VPCエンドポイントに対応

  • リージョンAPI、ゾーンAPI両方を操作可能
  • ゲートウェイ型のみの対応

制限と料金

利用可能なリージョン(AZ ID : コンソールの表記とは異なる)

※2024年5月

ap-northeast-1 apne1-az1/apne1-az4
us-east-1 use1-az4/use1-az5/use1-az6
ue-west-1 usw2-az1/usw2-az3/usw2-az4
eu-north-1 eun1-az1/eun1-az2/eun1-az3

料金

※2024年5月

S3 Express One Zone S3 Standard
ストレージ料金 $0.18/GB $0.025/GB
Getリクエスト料金 $0.00019/1000 Request $0.00037/1000 Request
Putリクエスト料金 $0.0024/1000 Request $0.0047/1000 Request

上記に加えて、データIOの時間が短縮されることでコンピュートリソースの削減が可能な可能性がある(TCOで判断)