Upgrade to Pro — share decks privately, control downloads, hide ads and more …

昔はシンプルだった_AmazonS3

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for kawaji kawaji
April 18, 2026

 昔はシンプルだった_AmazonS3

Avatar for kawaji

kawaji

April 18, 2026

More Decks by kawaji

Other Decks in Technology

Transcript

  1. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark. 昔はシンプルだった︖ Amazon S3 JAWS-UG 横浜 #100 昔話枠
  2. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 2 川路 義隆(かわじ よしたか) アマゾンウェブサービスジャパン合同会社 ソリューションアーキテクト サーバーレス・アーキテクチャ⽀援 アジャイル(Scrum) / AI-DLC など開発者向け⽀援も ࣗݾ঺հ 2 略歴 • 学⽣時代ゲーム会社でプログラマーのアルバイト • 世間知らずによる起業 • とあるソシャゲ開発で負荷を捌けず炎上し物理サーバー確保の難しさを知る その後EC2というすぐに起動するサーバーに出会う(感動!) • 2010年にJAWS-UG名古屋⽴ち上げ • 縁がありAWSの中の⼈に X: @kawaji_scratch
  3. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 3 川路 義隆(かわじ よしたか) アマゾンウェブサービスジャパン合同会社 ソリューションアーキテクト サーバーレス・アーキテクチャ⽀援 アジャイル(Scrum) / AI-DLC など開発者向け⽀援も ࣗݾ঺հ 3 略歴 • 学⽣時代ゲーム会社でプログラマーのアルバイト • 世間知らずによる起業 • とあるソシャゲ開発で負荷を捌けず炎上し物理サーバー確保の難しさを知る その後EC2というすぐに起動するサーバーに出会う(感動!) • 2010年にJAWS-UG名古屋⽴ち上げ←横浜⽀部より早い。現在118回開催 • 縁がありAWSの中の⼈に X: @kawaji_scratch 横浜に住んでいるのに物理会場始めてきました
  4. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. S3 20 年の歩み ─ 主要マイルストーン 2006-2010 基盤確⽴ 2011-2017 データ管理の成熟 2018-2022 簡素化の転機 2023-2026 分析・ AI ネイティブ 2006 S3 GA 2009 Versioning 2010 5TB / Multipart Upload 2011 SSE / Lifecycle 2012 Glacier 2015 CRR / Standard-IA 2018/7 ★ 性能向上 / hash 不要化 2018/11 Intelligent-Tiering / Object Lock 2019 Deep Archive / Access Points 2020/12 ★ Strong Consistency 2023 Express One Zone 2024 S3 Tables / Metadata NEW 2026/4 S3 Files 20th 🎉 機能追加は加速し、今や⼀枚では収まらないほど
  5. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark. 今の S3 は、もうシンプルじゃない ストレージクラス • Standard / Standard-IA / One Zone- IA • Intelligent-Tiering (⾃動階層化) • Glacier Instant / Flexible / Deep Archive • Express One Zone (超低レイテンシ) データ保護・ガバナンス • Versioning / MFA Delete • Object Lock (WORM, 改ざん防⽌) • SSE-S3 / SSE-KMS / SSE-C / DSSE • Block Public Access / Access Points 運⽤・可観測性 • Lifecycle / Inventory / Analytics • Batch Operations • Storage Lens (組織横断可視化) • CloudTrail / Server Access Logs レプリケーション • Cross-Region Replication (CRR) • Same-Region Replication (SRR) • Multi-Region Access Points • Replication Time Control (RTC) イベント・統合 • Event Notifications (SNS/SQS/Lambda) • EventBridge 連携 • Object Lambda (配信時変換) • Transfer Acceleration / CloudFront NEW 分析・ AI ネイティブ • S3 Select / Glacier Select • S3 Tables (Apache Iceberg) • S3 Metadata (⾃動インデックス化) • S3 Files (ファイルシステムとして) • Data Lake / Analytics 基盤
  6. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark. では、昔は本当にシンプルだった のか︖ ⏪ 2006 へ巻き戻してみましょう
  7. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark. 罠① パフォーマンスを引き出すのに「⼯夫」が 必要だった 〜 2018/7 ハッシュプレフィックスが必須 キーは辞書順でパーティション割当 → 類似プレフィックスは⼀点 集中でスロットリング # ⾼リクエスト時は先頭にランダムハッシュ付与が推奨 a3f2/2026/04/18/event-001.log b7c1/2026/04/18/event-002.log e9d4/2026/04/18/event-003.log ・ アプリ側でハッシュ⽣成ロジックを持つ ・ 時系列ソートが失われ、後続の⼀覧・分析が複雑化 ・ 『S3 の仕組み』を知らないと踏む罠 2018/7/17 〜 キー名は⾃然なままで OK プレフィックスごとに 3,500 PUT / 5,500 GET / sec 、プレフィッ クス数に実質上限なし # そのままで⾼スループットを引き出せる 2026/04/18/event-001.log 2026/04/18/event-002.log 2026/04/18/event-003.log ・ アプリ側で性能チューニングを考える必要がない ・ 時系列プレフィックスのまま分析しやすい ・ 『S3 の中⾝』を知らなくても使える 🎯 転機 : 2018/7/17 「Increased Request Rate Performance」 ランダムプレフィックス不要化 ─ アプリから『S3 の気持ち』が消えた⽇
  8. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark. 罠② 結果整合性をアプリで「取り扱う」必要が あった 〜 2020/12 Eventual Consistency 上書き PUT ・ DELETE ・ LIST は結果整合性 → 直後の GET で古い 値や消えたはずのオブジェクトが返る 時系列 : PUT v1 PUT v2 (上書き) GET → 古い v1 が返ることがある 😱 ・ アプリ側でリトライ / バージョン検査 / キャッシュ無効化 ・ 整合性を要する処理は独⾃の調整が必須 2020/12/1 〜 Strong Read-After-Write 全リージョン・全バケット・全オブジェクトで⾃動適⽤。追加料 ⾦なし・性能影響なし 時系列 : PUT v1 PUT v2 (上書き) GET → 必ず最新の v2 が返る ✅ ・ アプリ側にリトライ / 調整ロジックが不要 ・ DB のトランザクションと同じ感覚で使える 🎯 転機 : 2020/12/1 「Strong Read-After-Write Consistency」 設定変更なし・追加料⾦なしで、 14 年半越しの『気がかり』が消えた⽇
  9. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. 視点を反転させてみると ─ 機能は増えた。でも「アプリが気にすべきこと」は減り続けている。 性能チューニング 2018/7 ランダムプレフィックス不要 → キー設計は「意味」で決め られる 整合性モデル 2020/12 Strong Consistency ⾃動適⽤ → リトライ / 調整ロジックが 不要に コスト最適化 2018/11 〜 Intelligent-Tiering で⾃動階 層化 → アクセス頻度予測が不要に NEW インターフェース統合 2026/4 S3 Files でバケットを ファイルシステムとして利⽤ → オブジェクト / ファイルの⼆ 者択⼀が消える 機能の裏で、 S3 は「使う側の悩み」を⼀つずつ引き受けてきた。
  10. © 2026, Amazon Web Services, Inc. or its affiliates. All

    rights reserved. Amazon Confidential and Trademark. Thank you! © 2026, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon Confidential and Trademark.